gpt4 book ai didi

java - 帮助 line.split CSV

转载 作者:行者123 更新时间:2023-11-29 06:22:51 24 4
gpt4 key购买 nike

我是初学者,所以请不要吹嘘我到目前为止的工作:)我正在尝试读入 CSV 文件,然后查看它是否与某些命令匹配。 CSV 中的一些数据有一个句点,我认为在我尝试拆分它时它搞砸了。当我试图转储我的数组以查看那里有什么时,它总是在这段时间后被切断。这是一个数据示例。任何帮助,将不胜感激。同样,我是初学者,因此不胜感激。

示例数据

create,Mr. Jones,blah,blahcreate,Mrs. Smith,blah,blah
public class TestHarness {
public static void main(String[] args) throws IOException, FileNotFoundException {

Scanner input = new Scanner(new File("C:\\Users\\Ree\\Desktop\\SPR\\commands.txt"));

String[] validCommands = { "create", "move", "useWeapon", "search", "heal" };

boolean proceed = false;

while (!proceed)
{
for (int i = 0; i < validCommands.length; i++)
{
String line = input.next();
String[] nline = line.split (",");

if (nline[0].equals("create"))
{
String soldierName = nline[1];
String soldierType = nline[2];
String weapon = nline[3];
Soldier aSoldier = new Soldier(soldierName,weapon);

System.out.println("Command: "+ nline[0] +","+ soldierName +","+ soldierType+","+ weapon);

if (soldierType.equals("enlisted"))
{
Soldier s = new Enlisted(soldierName,weapon);
System.out.println(s.toString());
}
else if (soldierType.equals("officer"))
{
Soldier s = new Officer(soldierName,weapon);
System.out.println(s.toString());
}
}

else if (nline[0].equals("useWeapon")) {
System.out.print("weapon " + nline[0] + "\n");
}
else if (nline[0].equals("move")) {
System.out.print("move " + nline[0] + "\n");
}
else if (nline[0].equals("search")) {
System.out.print("search " + nline[0] + "\n");
}
else if (nline[0].equals("heal")) {
System.out.print("heal " + nline[0] + "\n");
}
}
}
}

}

最佳答案

调用 Scanner.next将只返回下一个单词(以空格分隔)。

您需要调用nextLine一次阅读整行。

关于java - 帮助 line.split CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2270179/

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