我是编程的新手,我不能为我的生活弄清楚为什么aa在下面不等于bb。我需要从设置的文本文件中提取文件路径字符串。我从txt文件中读取第9行作为字符串,如此获取路径:
String content = new Scanner(new File("settingsfilepath.txt")).useDelimiter("\\Z").next();
String[] textStr = content.split("\n");
aa = textStr[9];
bb = "testpath";
if(aa.equals(bb)){
print("Contents of both strings are same");
}else{
print("Contents of strings are different");
}
print(textStr[9]);
print(bb);
打印aa is: testpath
时输出
打印bb is: testpath
结果:"Contents of strings are different"
我需要变量aa等于字符串bb,因为当我使用保存函数[savefunction(filetype,filepath);]
somesavefunction(文件类型,AA);路径错误问题
somesavefunction(文件类型,BB);这工作
有两种不同类型的字符串吗?也许我没有正确地从文本文件中读取文件路径作为字符串?我觉得很愚蠢:(我希望这个问题有道理,因为我很难在这篇文章中解释它。感谢任何和所有的帮助。
答案 0 :(得分:1)
我建议你做一个
System.out.printf("aa = '%s', bb = '%s'%n", aa, bb);
我怀疑一个或两个字符串中都有空格。
答案 1 :(得分:1)
假设第9行是您想要的,您应该将aa设置为第8个数组元素,因为数组具有从零开始的索引。
aa = textStr[8];
答案 2 :(得分:1)
我怀疑你有空格,请尝试使用trim()
并将条件更改为
aa.trim().equals(bb.trim())