问题是我有四个不同的数组列表。我想根据用户给出的输入插入特定数组列表类的数据。 我怎么能这样做?
import java.io.*;
import java.util.*;
public class acquaintances
{
public static void main(String args[])
{
Arraylist<relative>re=new Arraylisrt<relative>();
Arraylist<personalfriend> pf=new Arraylist<personalfriend>();
Arraylist<casualfriend> cf=new Arraylist<casualfriend>();
Arraylist<professionalfriend> prf=new Arraylist<professionalfriend>():
这些是不同的arraylists。
我想在文本文件
中按顺序编写不同的acquantances信息休闲朋友1
随便的朋友2
........
亲戚1
相对2
...
personalfriend1
个人朋友2
个人朋友3
...........
professionalfriend1
professionalfriend2
..................
此外,如果我删除特定的细节。那么我该如何抹去特定的
文件详情
String name=null,number=null,email=null;
File file = new File("Readme.txt");
if (!file.exists()) {
file.createNewFile();
}
Scanner sc=new Scanner(System.in);
int ch=0,chu=0;
String jaff=null,baff=null;
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
String cmet_why=null,cinfo=null,cdate=null;
while(1)
{
System.out.println("Enter name,number,email of acquaintance");
name=sc.nextLine();
number=sc.nextLine();
email=sc.nextLine();
System.out.println("1.Create 2.Delete 3.Display 4. DisplayAll 5.Search );
ch=sc.nextInt();
jaff=sc.nextLine();
Switch(ch):
{
case 1:
{
System.out.println("1.Casual friend 2.relative 3.personal friend 4. Professional friend");
chu=sc.nextInt();
baff=sc.nextLine();
if(chu==1)
{
System.out.println("Enter reasonto meet ,dateof meeting,info");
cmet_why=sc.nextLine();
cdate=sc.nextLine();
cinfo=sc.nextLine();
casualfriend cfriend=new casualfriend(name,number,email,cmet_why,cdate,cinfo);
这里我将类对象添加到临时朋友列表
我希望将其写入该位置的文本文件。
问题是它位于文本文件的中间。
在此之后,我必须写亲戚,私人朋友,专业朋友。
逐行信息
cf.add(cfriend);
}
}
}
}
}
}
有不同的开关案例。我想按顺序写这些。
答案 0 :(得分:0)
public static void writeWithRandmoAccessFile( String content, String filePath) {
try (RandomAccessFile randomAccessFile = new RandomAccessFile(new File(filePath), "rw")) {
// move the cursor to the end of the file
// you can move the cursor to any position inside the file or to write at random positions
randomAccessFile.seek(randomAccessFile.length());//random position
randomAccessFile.write(content.getBytes());
// alternatively you can use randomAccessFile.writeChars(content)
// or randomAccessFile.writeUTF(content);
} catch (IOException e) {
e.printStackTrace();
}
}