【发布时间】:2014-01-21 05:31:40
【问题描述】:
我正在编写一个接受文件列表作为输入的代码。我正在做压力测试,如果有很多文件作为输入,就会出现错误。
我的 main 函数接受一个字符串数组作为输入。
public static void main(String[] args)
我有大约 200 个文件作为输入。我的 args 接受这种格式的输入:
-f <file path>
在文件列表的某一点上,Java 将抛出一个 File Not Found 异常,因为它获得了不正确的路径。总是只缺少一个字符。并且正确读取了前面的文件条目。
当一个字符丢失时,我试图获取字符串的长度,它总是在第 8090 个字符上。
示例: 如果我在嵌套目录中有文件列表。我的输入将是这样的。 -f 测试\test1\test1_test2\test1_test2_test3\test3_test4.txt
这种重复输入会导致:
-f test\test1\test1_test2\test1_test2_test3\test3_test4.txt
...
-f test\test1\test1_**tst2**\test1_test2_test3\test3_test4.txt
...
-f test\test1\test1_test2\test1_test2_test3\test3_test4.txt
缺少应该是第 8090 个字符的“e”。但是正在正确读取下一个文件条目。我错过了什么?
【问题讨论】:
-
你试过用“”引用吗?
-
嗨 A4L,在我的输入中,奇怪的是缺少一个字符,但下一个字符被正确读取。操作系统只抛出“命令太长”错误会更合适吗?
标签: java arrays string arguments args