这是用于学校项目的。我想用JAVA创建一个文本文件。
下面是我想在游戏中使用的代码的一部分。
用户需要输入名称(仅输入一次);下面的代码不断询问姓名,直到被取消。
名称应保存在开头创建的文本文件中
我尝试使用数组列表,但可以随意使用任何其他数据结构
这是我到目前为止所拥有的。我可以输入名称,但不会保存在txt文件中。
import javax.swing.*;
import java.io.*;
import java.lang.String;
import java.util.ArrayList;
public class Array {
public static void main(String[] args) throws IOException {
FileWriter fileName = new FileWriter("MyFile.txt", true);
ArrayList aList = new ArrayList();
String Player = " ";
while (!Player.isEmpty()){
Player = JOptionPane.showInputDialog("Name a friend please.");
// if (!Player.isEmpty());
}
try{
FileWriter fw;
fw = new FileWriter(String.valueOf(fileName));
Writer output = new BufferedWriter(fw);
int sz = 1;
for ( int i = 0 ; i < sz ; i++){
output.write(aList.get(i).toString() + "\n");
}
output.close();
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "I cannot create that file");
}
}
}
答案 0 :(得分:0)
您可以使用 File 创建文件,但这只是创建一个文件。要写入文件,可以使用 PrintWriter 。下面是代码:
import java.io.File; // importing File class
import java.io.PrintWriter; // importing PrintWriter class
public class TextFileWritingExample2 {
public static void main(String[] args) throws Exception{
java.util.Scanner sc=new java.util.Scanner(System.in);
// creating a .txt file
File createFile=new File("myFile.txt");
// writing to the file created above
PrintWriter writeFile=new PrintWriter(createFile);
// asking for 4 names, you could change it in anyway you want
for (int i = 0; i < 4; i++) {
System.out.println("Enter name: ");
String name = sc.nextLine();
writeFile.println(name);
}
//**DO NOT FORGET TO CLOSE YOU WRITER**
writeFile.close();
}
}
答案 1 :(得分:0)
好吧,您可以尝试FileOutputStream写入文件,如下所示:
try{
FileOutputStream out = new FileOutputStream(createFile, true);
out.writeUTF(name.getBytes());
}catch(Exception e){System.out.println(e);}