J'ai essayé d'utiliser l'API Java8 Stream

Exemple de code

J'ai essayé de lire et d'écrire des fichiers en utilisant StreamApi ajouté dans Java8. Veuillez noter que j'enquête et que j'écris dans environ 30 minutes pour vérification (rires)

SampleStream.java


import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.FileSystem;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.StandardOpenOption;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Stream;

/**
 *Échantillon de flux<br />
 *Le code de caractère est UTF-Fixé à 8(Shift_Non visible dans jis)
 */
public class SampleStream {
	/**Lire le chemin*/
	private static final String INPUT_PATH = "C:\\temp\\in.txt";
	/**Chemin de sortie*/
	private static final String OUTPUT_PATH = "C:\\temp\\out.txt";

	public static void main(String[] args) throws Exception {
		//Obtenir FileSystem
		FileSystem fs = FileSystems.getDefault();
		//Définir le chemin du fichier
		Path path = fs.getPath(INPUT_PATH);
		//Définir le chemin de la sortie
		Path out = fs.getPath(OUTPUT_PATH);

		//Comment lire la partie 1
		// Files.Lire en utilisant des lignes
		try (Stream<String> stream = Files.lines(path, StandardCharsets.UTF_8)) {
			stream.filter(s -> s.contains("link")).map(s -> s.replace("html", "form"))
					.map(s -> s.replace("action", "href")).forEach(System.out::println);
		} catch (IOException e) {
			System.out.println("error");
		}

		//Comment lire la partie 2
		// Files.Lire en utilisant readAllLines
		List<String> lines = Files.readAllLines(path, StandardCharsets.UTF_8);
		List<String> output = new ArrayList<String>();
		lines.stream().filter(s -> s.contains("link")).forEach(s -> output.add(s));

		//Empaqueter les données extraites dans une liste et les afficher sous forme de texte
		Files.write(out, output, StandardCharsets.UTF_8, StandardOpenOption.APPEND);

		//Sortie des données de sortie avec l'instruction Extended for et contrôle
		for (String put : output) {
			System.out.println(put);
		}
	}

}

Il semble que le code de caractère ne supporte que UTF-8, et une exception est levée lors de la tentative de lecture avec Shift_Jis.

Je souhaite publier la méthode de lecture de la hiérarchie des répertoires à une date ultérieure.

Recommended Posts

J'ai essayé d'utiliser l'API Java8 Stream
J'ai essayé d'utiliser l'API Elasticsearch en Java
J'ai essayé d'utiliser Java REPL
API Java Stream
J'ai essayé d'utiliser JWT en Java
J'ai essayé d'utiliser le mémo Java LocalDate
J'ai essayé d'utiliser Google HttpClient de Java
Traitement des données à l'aide de l'API de flux de Java 8
Essayez d'utiliser l'API Stream en Java
J'ai essayé d'utiliser OpenCV avec Java + Tomcat
J'ai essayé de résumer l'API Stream
J'ai essayé d'utiliser Gson
[Java] API / carte de flux
J'ai essayé d'utiliser TestNG
J'ai essayé d'utiliser Galasa
Pratique de l'API Java8 Stream
[API] J'ai essayé d'utiliser l'API de recherche par code postal
API Java Stream en 5 minutes
J'ai essayé Drools (Java, InputStream)
[Java] Stream API - Traitement de l'arrêt du flux
[Java] Stream API - Traitement intermédiaire de flux
J'ai essayé d'utiliser Apache Wicket
J'ai essayé node-jt400 (flux SQL)
[Java] Introduction à l'API Stream
[Java] Opération intermédiaire de l'API Stream
J'ai essayé la métaprogrammation avec Java
Essayé l'API Toot et Streaming de Mastodon en Java
J'ai essayé de faire fonctionner SQS en utilisant AWS Java SDK
J'ai essayé le type d'entrée / sortie de Java Lambda ~ Stream version ~
J'ai essayé d'utiliser Log4j2 sur un serveur Java EE
[Java] J'ai essayé de mettre en œuvre la recherche de produits de l'API Yahoo
J'ai essayé d'utiliser l'instruction Extended for en Java
J'ai essayé de gratter un graphique boursier en utilisant Java (Jsoup)
Exporter un problème à l'aide de l'API Java de JIRA
J'ai essayé d'utiliser Spring + Mybatis + DbUnit
J'ai essayé d'interagir avec Java
J'ai essayé la communication UDP avec Java
J'ai essayé le framework Java "Quarkus"
J'ai essayé de résumer l'apprentissage Java (1)
J'ai essayé d'utiliser Dapr en Java pour faciliter le développement de microservices
[Android] J'ai essayé d'utiliser la disposition du coordinateur.
J'étais étrangement accro à l'utilisation de l'API Stream de Java avec Scala
J'ai essayé d'utiliser le conteneur Pari gp
J'ai essayé d'utiliser WebAssembly Stadio (version 2018/4/17)
Java 8 ~ Stream API ~ pour commencer maintenant
J'ai essayé de résumer Java 8 maintenant
J'ai essayé d'utiliser la bibliothèque CameraX avec Android Java Fragment
J'ai essayé d'afficher le calendrier sur la console Eclipse en utilisant Java.
J'ai essayé d'utiliser Realm avec Swift UI
J'ai essayé d'utiliser l'outil de diagnostic Java Arthas
J'ai essayé d'utiliser UICollectionViewListCell ajouté à partir de Xcode12.
J'ai essayé le mappeur d'objets de Cassandra pour Java
Java9 était inclus, j'ai donc essayé jshell.
J'ai essayé d'utiliser Scalar DL avec Docker
Trier par plusieurs conditions à l'aide de Java Stream
J'ai essayé le nouveau yuan à Java
Essayez d'utiliser l'API au format JSON en Java
J'ai essayé d'utiliser OnlineConverter avec SpringBoot + JODConverter
Essayez différentes méthodes d'API Java Stream (maintenant)