我正在导入Excel文档以在UI中读取和显示内容。我需要知道如何使用浏览获取上传文件的路径,以便读取excel文件的内容。如何在JSF中获取上传的文件路径
回答
你最好看看这篇文章。使用战斧2.0(http://myfaces.apache.org/tomahawk-project/tomahawk20/index.html)由BalusC的解决方案是伟大的,你需要
一切都在那里
这是我的代码工作簿簿= Workbook.getWorkbook(新文件( “d:/Docs/MNC/document.xls”)); \t \t Sheet sheet = workbook.getSheet(“Sheet”);生病添加excl文件如图所示,但我想要得到它,我点击浏览n选择导入buton..pls帮助我如何获得此路径,当用户点击浏览并导入 – user1654095
你的意思是当你点击浏览器时浏览按钮被采取直接到那个文件? – MaVRoSCy
雅代替name..i要从ui..how我可以选择的文件路径,用户的路径名y中的文件的硬编码路径? – user1654095
我需要知道如何使用浏览已上传的获取文件的路径为了读取excel文件的内容。
这里有一个主要的思考错误。
想象一下,我是希望上传文件的客户端,并且您是需要获取文件内容的服务器。我给你的路径c:\path\to\foo.xls
作为唯一的信息。你将如何为服务器不断得到它的内容是什么?你有一个开放的TCP/IP连接到我的本地硬盘文件系统?真?是否所有其他人的本地磁盘文件系统都能够通过Internet轻松访问所有敏感信息?
这不是上传文件的方式。这如果服务器在物理上是同机作为客户端运行只有永远的工作,这样就可以只使用FileInputStream
与路径(这只会发生在本地开发环境)。
您应该对客户端已经与HTTP请求主体一起发送给您的唯一文件内容感兴趣。用HTML来说,你可以使用<input type="file">
。但是直到即将到来的JSF 2.2没有相应的标准JSF <h:xxx>
这个组件。您需要查找为此提供组件的JSF组件库。在你的情况下,用RichFaces(在你的问题中标记),你可以使用<rich:fileUpload>
。目前还不清楚这RichFaces的您正在使用的版本,但对于RF 3.3.3,你可以找到在3.3.3 showcase site并在4.0 showcase site RF 4.0一个完整的例子。
无论您选择什么方式,您应该在JSF受管bean中最终以代表文件内容的byte[]
或InputStream
结束。那么你所有的存储它,无论你使用例如FileOutputStream
希望服务器的本地磁盘文件系统上的自由。你甚至可以也只需直接将其以任何Excel的API你使用,大部分都只是采取的方法的InputStream
或byte[]
。
String fileName = FilenameUtils.getName(uploadedFile.getName());
byte[] bytes = uploadedFile.getBytes();
FileOutputStream outputStream = null;
try {
String filePath = System.getProperty("java.io.tmpdir") + "" + fileName;
outputStream = new FileOutputStream(new File(filePath));
outputStream.write(bytes);
outputStream.close();
readExcelFile(filePath);
} catch (Exception ex) {
}
In the above code Iam uploading the file using tomahawk after uploading storing the file in a temporary location.And from there i will be reading using poi.
public static void readExcelFile(String fileName)
{
try{
FileInputStream myInput = new FileInputStream(fileName);
POIFSFileSystem myFileSystem = new POIFSFileSystem(myInput);
org.apache.poi.ss.usermodel.Workbook workbook = WorkbookFactory.create(myFileSystem);
org.apache.poi.ss.usermodel.Sheet sheet = workbook.getSheetAt(0);
Iterator rowIter = sheet.rowIterator();
for(Row row : sheet) {
//u can read the file contents by iterating.
}
} catch (Exception ex) {
}
}
- 1. 在Django中,上传时如何获取上传文件的文件路径?
- 2. 如何在FilePicker中获取上传的文件路径
- 3. 如何在jsp上传文件时获取文件路径?
- 4. 在Django中上传后如何获取文件绝对路径?
- 5. 如何获取上传文件的文件路径?
- 6. 如何获取文件上传的文件路径
- 7. 在FineUploader中获取上传文件的文件路径
- 8. 在MVC 3中获取上传文件的文件路径
- 9. 如何在上传之前获取文件的路径?
- 10. 文件上传:获取绝对路径
- 11. 如何在文件上传控制中获取文件名的完整路径
- 12. 如何在PHP中上传文件时获取完整的文件路径?
- 13. 如何在文件上传时在php中获取文件临时路径
- 14. 如何获取上传的文件路径?
- 15. 如何获取上传文件的路径
- 16. 如何获取jsp上传文件的完整路径?
- 17. 如何在html中上传文件时获取完整文件路径
- 18. 在node.js中获取上传的文件名/路径
- 19. 如何获取上传文件的路径和文件名中的Zend框架
- 20. 在JSF中从托管bean获取资源文件的路径
- 21. 如何在asp.net中获取文件上传控件的完整路径?
- 22. 如何在上传文件时使用jquery获取完整的文件路径?
- 23. 上传JSF文件(需要正确的文件路径)
- 24. 烧瓶:如何获取上传文件夹路径
- 25. PyroCMS获取上传文件的真实文件系统路径
- 26. PHP:从路径获取文件作为上传的文件
- 27. 从文件上传的位置获取文件路径
- 28. 如何在C#3.0中获取上传的文件完整路径?
- 29. 获取我的JSF项目中的文件夹路径
- 30. 如何获取在HTML5 FileReader中上传的图片的路径
问题不明确,请提供更多的细节 –