gpt4 book ai didi

java - 使用 Java 将 String[] 转换为 Arraylist

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:49:18 24 4
gpt4 key购买 nike

我想将从文件中获取的字符串转换为数组列表。我试过这种方法,但它不起作用:

import java.io.*;
import java.util.*;

public class Data
{
static File file = DataSaver.file;
static List<String> data = new ArrayList<String>(512);
public static void a() throws Exception
{
FileInputStream fis = new FileInputStream(file);
DataInputStream dis = new DataInputStream(fis);
BufferedReader reader = new BufferedReader(new InputStreamReader(dis));
if(!file.exists())
{
throw new IOException("Datafile not found.");
}
else
{
String[] string = reader.readLine().split("$");
for(int i = 0; i < string.length; i++)
{
data.add(string[i]);
}
}
dis.close();
System.out.println(data.toString()); //for debugging purposes.
}
}

输出:[$测试数据1$测试数据2$]

想要的输出:[测试数据1,测试数据2]

文件内容:$测试数据1$测试数据2$

有人可以帮助我吗?

最佳答案

String.split 采用正则表达式,$ 是需要转义的特殊字符。此外,第一个字符是 $,因此拆分最终会得到一个空的第一个元素(您需要以某种方式将其删除,这是一种方法:

String[] string = reader.readLine().substring(1).split("\\$");

...或者:

String[] string = reader.readLine().split("\\$");
for (int i = 0; i < string.length; i++)
if (!string[i].isEmpty())
data.add(string[i]);

关于java - 使用 Java 将 String[] 转换为 Arraylist<String>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11618106/

24 4 0