使用Java将日期、时间和名称写入文件
我想把我的名字连同日期和时间一起写在一个文件里 使用arraylist。但当我将其写入文件时..只需一个名称 带日期显示两次;这与我的暗示有关 因为当我不打印日期和值时,它会打印日期和值 一次,但会覆盖我以前的值。][1]使用Java将日期、时间和名称写入文件,java,arraylist,Java,Arraylist,我想把我的名字连同日期和时间一起写在一个文件里 使用arraylist。但当我将其写入文件时..只需一个名称 带日期显示两次;这与我的暗示有关 因为当我不打印日期和值时,它会打印日期和值 一次,但会覆盖我以前的值。][1] //created method to write date and name onto file public void standardRoom() { try { Path p=Paths.get("test/standardRoom.tex
//created method to write date and name onto file
public void standardRoom()
{
try {
Path p=Paths.get("test/standardRoom.text");
if(Files.notExists(p))
{
Files.createFile(p);
}
System.out.println("Enter Name");
String name=sc.next();
List<String>stdrooms=new ArrayList<>();
date = d.toString();
stdrooms.add(date);
stdrooms.add(name);
System.out.println("Standard Room booked");
Iterator<String>bookings=stdrooms.iterator();
while(bookings.hasNext())
{
String s=bookings.next();
//Files.write(p, stdrooms);
Files.write(p, stdrooms,StandardOpenOption.APPEND);
}
} catch (IOException e) {
}
}
}
//创建了将日期和名称写入文件的方法
公共标准间()
{
试一试{
路径p=Path.get(“test/standardRoom.text”);
if(Files.notExists(p))
{
createFile(p);
}
System.out.println(“输入名称”);
字符串名称=sc.next();
Liststdrooms=新的ArrayList();
日期=d.toString();
添加(日期);
添加(名称);
System.out.println(“预订标准间”);
Iteratorbookings=stdrooms.iterator();
while(bookings.hasNext())
{
字符串s=bookings.next();
//写入(p,stdrooms);
write(p、stdrooms、StandardOpenOption.APPEND);
}
}捕获(IOE异常){
}
}
}
将日期
和名称
添加到列表后,stdrooms
包含两个元素
迭代器bookings
现在具有列表的大小。因此,执行两次文件.write
:
Files.write(p, stdrooms,StandardOpenOption.APPEND);
当打印同时包含日期和名称的stdrooms时,将使用默认的toString实现,它将依次打印整个列表
一种解决方案可能是使用s
进行打印,而不是使用stdrooms
:
Files.write(p, s.getBytes(),StandardOpenOption.APPEND);
请把所有的缩进都改正并对齐。谢谢,哎呀!我的错误.corrected显示错误。如果使用“s”而不是stdrooms,则参数不匹配;字符串无法转换为字节[]
s。getBytes()
将返回字节数组。我会更正答案的。太好了!我想要的方式…那是些微不足道的废话!Thanx man最后,这个程序看起来很整洁,我可以帮上忙。你可以把它标记为被接受的答案,或者如果你愿意的话,可以投票表决。