用于在java中写入文件的帮助
嗨 我创建了一个名为“Human”的类,该类的每个对象都有一个名称和一个类型,可以是学生或讲师。我已经创建了另一个类main,它创建了Human对象,并为这些对象指定了类型和名称,并将这些对象添加到linkedList中。现在我想把这个linkedList写进一个文件,但我不知道怎么写。我必须将对象及其类型写入该linkedList。我已经创建了以下作为主类,但是我在编写文件部分时遇到了问题。请你给我引路好吗用于在java中写入文件的帮助,java,file-io,Java,File Io,嗨 我创建了一个名为“Human”的类,该类的每个对象都有一个名称和一个类型,可以是学生或讲师。我已经创建了另一个类main,它创建了Human对象,并为这些对象指定了类型和名称,并将这些对象添加到linkedList中。现在我想把这个linkedList写进一个文件,但我不知道怎么写。我必须将对象及其类型写入该linkedList。我已经创建了以下作为主类,但是我在编写文件部分时遇到了问题。请你给我引路好吗 public class Testing { public static L
public class Testing {
public static LinkedList<Human> link =new LinkedList<Human>();
static FileOutputStream fop;
public static void main(String args[])
{
File f=new File("textfile1.txt");
try {
fop=new FileOutputStream(f);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Human hm = new Human();
Human hum = new Human();
hm.setName("Anna");
hm.setType("Student");
hum.setName("Elvis");
hum.setType("Instructor");
link.add(hm);
link.add(hum);
for (Human h : link) {
fop.write(h.getType());
fop.write(h);
}
}
}
公共类测试{
public static LinkedList link=new LinkedList();
静态文件输出流fop;
公共静态void main(字符串参数[])
{
文件f=新文件(“textfile1.txt”);
试一试{
fop=新文件输出流(f);
}catch(filenotfounde异常){
//TODO自动生成的捕捉块
e、 printStackTrace();
}
人类hm=新人类();
人类的嗡嗡声=新人类();
hm.setName(“安娜”);
hm.setType(“学生”);
哼,集名(“猫王”);
hum.setType(“讲师”);
link.add(hm);
link.add(哼哼);
for(人类h:link){
fop.write(h.getType());
fop.write(h);
}
}
}
看看
假设您已经实现了一种用于人的方法 解决您的问题的一个简单有效的方法是创建一个简单的“CSV”文件,这将是您的
人类对象的可读表示,看起来像:
Anna;Student
Elvis;Instructor
您可以通过执行以下操作来实现这一点:
for (Human h : link) {
String line = h.toString() + ";" + h.getType() + "\n";
fop.write(line.getBytes());
}
如果要将对象写入文件,则需要使用序列化。使人工对象实现可序列化
接口,然后引用。这取决于要写入文件的内容。是否希望值、serlialised对象、xml表示形式?以可读形式。或者以二进制形式?如果我想在测试类中添加另一个方法来读取我用上述代码在linkedList中创建的“textfile”,这是一个好方法吗?
for (Human h : link) {
String line = h.toString() + ";" + h.getType() + "\n";
fop.write(line.getBytes());
}