1

私は、レシピとそれに対応する情報 (タイトル、材料、ユーティリティ、指示) を JFrame に入力するプロジェクトを行っており、その内容をファイルに保存したいと考えています。ユーザーがデータを入力するフィールド (タイトル、材料など) は JTextFields です。私が知る必要があるのは、その JTextField からのテキストを新しいファイルに書き込む方法です。各フィールドに独自のファイルがあることをお勧めします。そのため、レシピのタイトルだけが独自のファイル (たとえば、stirfry.txt) を持ち、コンテンツは「stirfry」になります。

どんなフィードバックでも大歓迎です

4

4 に答える 4

1

これは役に立ちますか?

void saveToFile(String fileName, JTextField textField) throws Exception {
   FileOutputStream out = new FileOutputStream(fileName, true);
   out.write(textField.getText().getBytes());
} 
于 2013-09-25T09:17:36.653 に答える
1

getText() 関数を使用してテキスト フィールドのコンテンツを取得する java.io を使用して新しいファイルを作成し、BufferedStream を使用してファイルのコンテンツを書き込みます。

于 2013-09-25T09:15:34.740 に答える
1

試す

JTextField titleTextField = ...;
String title = titleTextField.getText();
FileWriter fw = new FileWriter(new File(title+".txt"));
fw.write(title);
fw.close();
于 2013-09-25T09:20:53.267 に答える
0

質問は、ファイルの形式によって異なります。

フィールドのテキストは、 を使用して取得できますJTextField#getText詳細については、テキスト フィールドの使用方法を参照してください...

たとえば、値のキーと名前のペアがあるだけの場合は、テキスト フィールドの各値をPropertiesオブジェクトに追加して、そのsave機能を利用することができます。Propertiesには、 APIを介してファイルを再度ロードできるという追加の利点があります。詳細については、プロパティのチュートリアルをご覧ください。

ただし、これは各要素が一意であることを前提としています。

より複雑または柔軟なデータ構造を求めている場合は、XML を使用する必要があるかもしれません。幸いなことに、Java にはバインディング API があり、オブジェクトを XML との間で変換できます。詳細については、JAXB の紹介を参照してください。

究極の解決策は、ある種のデータベースを使用することです;)

于 2013-09-25T09:27:32.730 に答える