如何将文本文件中数组列表的每个索引保存为 java 中的新行?
How to save Each index of Array List in text file as new line in java?
我正在尝试将列表的每个索引另存为文本文件中的新行,格式如下 java,并在稍后读取与两个单独的数组列表相同的内容。我已经完成了保存部分,现在我想将它读回两个单独的列表
Save Formate
Class 保存列表
public class SaveLists{
private List<Integer> First= new ArrayList<>();
private List<Integer> second= new ArrayList<>();
public void save(List l) throws IOException{
try{
File f = new File ("E:\Sample.txt");
if (!f.exists()) {
f.createNewFile();
}
FileWriter fw = new FileWriter(f.getAbsoluteFile(),true);
BufferedWriter bw = new BufferedWriter(fw);
for(Object s : l) {
bw.write(s + System.getProperty("line.separator"));
}
bw.write(System.getProperty("line.separator"));
bw.close();
}catch(FileNotFoundException e){System.out.println("error");}
}
public void ReadFromText(){
//Read from Text file and save in both lists
}
}
Class 主要 :
public static void main(String[] args) {
temp t = new temp();
t.First.add(1);
t.First.add(2);
t.First.add(3);
t.second.add(6);
t.second.add(5);
t.second.add(4);
t.save(t.First);
t.save(t.second);
// t.ReadFromText();
}
由于两个保存操作都在同一个线程上,因此这些行将以同步方式写入文件。因此,在从文件中读取所有行后,我们可以根据输入列表的大小拆分行,即第一组值将由 'First' 列表插入。
public void ReadFromText() {
// Read from Text file and save in both lists
List<Integer> output1 = new ArrayList<>();
List<Integer> output2 = new ArrayList<>();
try {
Path path = Path.of("D:\Sample.txt");
List<String> inputList = Files.lines(path).collect(Collectors.toList());
for (int i = 0; i < inputList.size(); i++) {
String s = inputList.get(i);
if (!s.isEmpty()) {
if (i < First.size()) {
output1.add(Integer.valueOf(s));
} else {
output2.add(Integer.valueOf(s));
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
我正在尝试将列表的每个索引另存为文本文件中的新行,格式如下 java,并在稍后读取与两个单独的数组列表相同的内容。我已经完成了保存部分,现在我想将它读回两个单独的列表
Save Formate
Class 保存列表
public class SaveLists{
private List<Integer> First= new ArrayList<>();
private List<Integer> second= new ArrayList<>();
public void save(List l) throws IOException{
try{
File f = new File ("E:\Sample.txt");
if (!f.exists()) {
f.createNewFile();
}
FileWriter fw = new FileWriter(f.getAbsoluteFile(),true);
BufferedWriter bw = new BufferedWriter(fw);
for(Object s : l) {
bw.write(s + System.getProperty("line.separator"));
}
bw.write(System.getProperty("line.separator"));
bw.close();
}catch(FileNotFoundException e){System.out.println("error");}
}
public void ReadFromText(){
//Read from Text file and save in both lists
}
}
Class 主要 :
public static void main(String[] args) {
temp t = new temp();
t.First.add(1);
t.First.add(2);
t.First.add(3);
t.second.add(6);
t.second.add(5);
t.second.add(4);
t.save(t.First);
t.save(t.second);
// t.ReadFromText();
}
由于两个保存操作都在同一个线程上,因此这些行将以同步方式写入文件。因此,在从文件中读取所有行后,我们可以根据输入列表的大小拆分行,即第一组值将由 'First' 列表插入。
public void ReadFromText() {
// Read from Text file and save in both lists
List<Integer> output1 = new ArrayList<>();
List<Integer> output2 = new ArrayList<>();
try {
Path path = Path.of("D:\Sample.txt");
List<String> inputList = Files.lines(path).collect(Collectors.toList());
for (int i = 0; i < inputList.size(); i++) {
String s = inputList.get(i);
if (!s.isEmpty()) {
if (i < First.size()) {
output1.add(Integer.valueOf(s));
} else {
output2.add(Integer.valueOf(s));
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}