我只需要使用InputStream.我abc.tx通过使用File如下获取文件名作为t ,File file = new File("F:\\source\\abc.txt");file.getAbsoluteFile().getName() // getting - abc.txt同样,我想abc.txt使用InputStream.InputStream inputfile= new FileInputStream("F:\\source\\abc.txt");Field field = inputfile.getClass().getDeclaredField("path");field.setAccessible(true);String filePath = (String)field.get(inputfile);File fileName = new File(filePath);你能帮我吗,如何只获取文件名?
1 回答
慕妹3146593
TA贡献1820条经验 获得超9个赞
首先,你正在做的事情是脆弱的:
如果
InputStream
不是,FileInputStream
它就会失败。如果未来的 Java 版本更改了 的内部结构
FileInputStream
,它可能会失败。如果您的代码被沙盒化,它很可能会失败。
保留/传递您在实例化FileInputStream
.
话虽如此,要获得文件名,您需要使用 aFile
或Path
提取它;例如
String justTheFileName = new File(fileName).getName();
或者
String justTheFileName = Paths.get(fileName).getFileName();
添加回答
举报
0/150
提交
取消