Monday, December 28, 2015

Files.lines() read text file returned by JavaFX FileChooser

Example show how to read all lines from a file returned by JavaFX FileChooser, using Files.lines().


package javafxreadtextfile;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.VBox;
import javafx.stage.FileChooser;
import javafx.stage.Stage;
/**
 *
 * @web http://java-buddy.blogspot.com/
 */
public class JavaFXReadTextFile extends Application {
 @Override
 public void start(Stage primaryStage) {
 Button btnLoad = new Button("Load");
 btnLoad.setOnAction(btnLoadEventListener);
 VBox rootBox = new VBox();
 rootBox.getChildren().add(btnLoad);
 
 Scene scene = new Scene(rootBox, 300, 300);
 
 primaryStage.setTitle("java-buddy.blogspot.com");
 primaryStage.setScene(scene);
 primaryStage.show();
 }
 
 EventHandler<ActionEvent> btnLoadEventListener
 = (ActionEvent event) -> {
 FileChooser fileChooser = new FileChooser();
 fileChooser.getExtensionFilters()
 .addAll(
 new FileChooser.ExtensionFilter("TXT files (*.TXT)", "*.TXT"),
 new FileChooser.ExtensionFilter("txt files (*.txt)", "*.txt"));
 
 File file = fileChooser.showOpenDialog(null);
 if (file != null) {
 try {
 Files.lines(file.toPath()).forEach(System.out::println);
 } catch (IOException ex) {
 Logger.getLogger(JavaFXReadTextFile.class.getName())
 .log(Level.SEVERE, null, ex);
 }
 }
 };
 public static void main(String[] args) {
 launch(args);
 }
 
}

No comments:

Post a Comment

[フレーム]

Subscribe to: Post Comments (Atom)

AltStyle によって変換されたページ (->オリジナル) /