gpt4 book ai didi

java - 通过换行问题拆分字符串

转载 作者:行者123 更新时间:2023-11-29 07:13:39 24 4
gpt4 key购买 nike

我正在读取一个通过套接字发送的文件,然后尝试通过换行符 (\n) 拆分它,当我读取文件时,我使用的是 byte[] 并将字节数组转换为字符串,以便我可以拆分它。

public String getUserFileData()
{
try
{
byte[] mybytearray = new byte[1024];
InputStream is = clientSocket.getInputStream();
int bytesRead = is.read(mybytearray, 0, mybytearray.length);

is.close();

return new String(mybytearray);
}
catch(IOException e)
{

}

return "";
}

这是用于尝试拆分字符串的代码

public void readUserFile(String userData, Log logger)
{
String[] data;
String companyName;

data = userData.split("\n");

username = data[0];
password = data[1].toCharArray();
companyName = data[2];
quota = Float.parseFloat(data[3]);

company = new Company();
company.readCompanyFile("C:\\Users\\Chris\\Documents\\NetBeansProjects\\ArFile\\ArFile Clients\\" + companyName + "\\"
+ companyName + ".cmp");

cloudFiles = new CloudFiles();
cloudFiles.readCloudFiles(this, logger);
}

它导致了这个错误

Exception in thread "AWT-EventQueue-1" java.lang.ArrayIndexOutOfBoundsException

最佳答案

您可以使用 readLine BufferedReader 中的方法类。

InputStream包裹在InputStreamReader下,将其包裹在BufferedReader下:

InputStream is = clientSocket.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is));

请同时检查流的编码 - 您可能需要在 InputStreamReader 的构造函数中指定编码。

关于java - 通过换行问题拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11554673/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com