[java] JavaFX 입출력 다루기
JavaFX는 Java 기반의 GUI 프레임워크로서, 다양한 플랫폼에서 멋진 사용자 인터페이스를 구축할 수 있도록 도와줍니다. 이러한 인터페이스를 개발하는 과정에서는 종종 입출력 작업을 수행해야합니다. 이 글에서는 JavaFX에서의 입출력 다루는 방법을 알아보겠습니다.
파일 입출력
JavaFX에서 파일 입출력을 다루는 방법은 Java 표준 라이브러리인 java.io
및 java.nio
패키지와 동일한 방법을 따릅니다. 따라서, 파일을 읽거나 쓰기 위해서는 FileInputStream
, FileOutputStream
, BufferedReader
, BufferedWriter
등의 클래스를 사용할 수 있습니다.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class FileIOExample {
public static void main(String[] args) {
try {
// 파일 쓰기
BufferedWriter writer = new BufferedWriter(new FileWriter("file.txt"));
writer.write("Hello, JavaFX!");
writer.close();
// 파일 읽기
BufferedReader reader = new BufferedReader(new FileReader("file.txt"));
String line = reader.readLine();
System.out.println(line);
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
위의 예제에서는 FileWriter
클래스를 사용하여 “file.txt” 파일에 “Hello, JavaFX!”라는 내용을 쓰고, FileReader
클래스를 사용하여 파일을 읽어오고 출력합니다.
사용자 입력 다루기
JavaFX에서는 사용자로부터 입력을 받을 수 있는 다양한 컨트롤을 제공합니다. 예를 들어, TextField
, TextArea
, ComboBox
등이 있습니다. 이러한 컨트롤을 이용하여 사용자로부터 입력을 받은 후, 해당 입력 값을 처리할 수 있습니다.
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class UserInputExample extends Application{
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
TextField textField = new TextField();
Button button = new Button("Submit");
button.setOnAction(event -> {
String input = textField.getText();
System.out.println(input);
});
VBox root = new VBox();
root.getChildren().addAll(textField, button);
Scene scene = new Scene(root, 300, 200);
primaryStage.setScene(scene);
primaryStage.show();
}
}
위의 예제에서는 TextField
를 사용하여 사용자로부터 입력을 받고, “Submit” 버튼을 클릭하면 해당 입력 값을 출력하는 방법을 보여줍니다.