gpt4 book ai didi

java - 将字符串转换为多个字符串

转载 作者:行者123 更新时间:2023-11-29 03:17:37 25 4
gpt4 key购买 nike

坚持这个小项目。无法弄清楚如何在 String[] 中将 String 拆分为多个字符串。

例子:

String exampleString = "one two three four five";
String[] exmplString = {"one", "two", "three", "four", "five"};

我有什么:

static File interfacepath;
FileReader fr;
BufferedReader br;
static String currentLine;
static String[] parseableLine;
Integer lineNumber;

public void readFile(Integer interfaceID) throws IOException {

interfacepath = new File("data/csgui/interface_" + interfaceID
+ ".csgui");

fr = new FileReader(interfacepath.getAbsolutePath());

br = new BufferedReader(fr);

br.read();

getLine(1);
}

public static void getLine(Integer lineNumber) throws IOException {

try (LineNumberReader lnr = new LineNumberReader(new FileReader(
interfacepath))) {

for (String line = null; (line = lnr.readLine()) != null;) {

if (lnr.getLineNumber() == lineNumber) {

currentLine = line;
parseableLine = currentLine.split("\\s+");

System.out.println(parseableLine);

}
System.out.println(currentLine);

}

}
}

当我运行应用程序时,它返回:

[Ljava.lang.String;@5bcf4b61
testTable Table 1280 720 350 350 1

& 我遇到的困难:

{testTable, Table, 1280, 720, 350, 350, 1}
testTable Table 1280 720 350 350 1

最佳答案

如果我理解你的问题,你可以使用 String.split(String)和类似的东西

public static void main(String[] args) {
String str = "testTable Table 1280 720 350 350 1";
String[] strArr = str.split("\\s+");
System.out.println(Arrays.toString(strArr));
}

输出是

[testTable, Table, 1280, 720, 350, 350, 1]

因为 regular expression "\\s+" 匹配一个或多个空白字符。

编辑

根据您更新的代码,

System.out.println(parseableLine);

应该是

System.out.println(Arrays.toString(parseableLine));

您得到 [Ljava.lang.String;@5bcf4b6(并且需要 Arrays.toString(Object[]))因为 Java 数组不会覆盖 toString()

关于java - 将字符串转换为多个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25598626/

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