我嘗試使用下面的示例所示的代碼:org.apache.commons.fileupload.disk.DiskFileItem未正確創建?
java.lang.NullPointerException while creating DiskFileItem
我的測試方法中包含以下代碼:
final File TEST_FILE = new File("C:/my_text.txt");
final DiskFileItem diskFileItem = new DiskFileItem("fileData", "text/plain", true, TEST_FILE.getName(), 100000000, TEST_FILE.getParentFile());
diskFileItem.getOutputStream();
System.out.println("diskFileItem.getString() = " + diskFileItem.getString());
的文本文件,在這個位置,但最後一行存在在上面的代碼中不輸出文件內容。
任何想法,爲什麼?
注:
下不打印的文件內容:
BufferedReader input = new BufferedReader(new FileReader(TEST_FILE));
String line = null;
while ((line = input.readLine()) != null){
System.out.println(line);
}
我想你錯過了什麼,他們在說我上面提到的鏈接。他們調用'diskFileItem.getOutputStream();'來繞過一些錯誤。但API並說,'diskFileItem.getString())'應該輸出文件。無論如何,即使我使用BufferedReader input = new BufferedReader(new InputStreamReader(diskFileItem.getInputStream()));它仍然不會輸出文件。據我所見,這意味着'diskFileItem'不包含文件內容。 – rapt
確定我的壞,我不明白你試圖這樣做。 – TecHunter
謝謝 - 它的工作!我不知道他們爲什麼試圖通過構造函數創建'DiskFileItem'。但使用這個工廠肯定更有意義,而且實際上是有效的。 – rapt