管理绝对路径和完整路径

时间:2011-08-12 09:14:58

标签: c# java algorithm file automation

我创建了一个可以读取.txt文件的小程序。

此文件包含指向此格式new_file.txt

的其他文件的链接

目标是返回新文件的路径,所以基本上我正在这样做:

String newFileName = getFileName();
int index = oldFilePath.lastIndexOf('\\');
String path = oldFilePath.substring(0, index + 1);
String newFilePath = path + newFileName;
return newFilePath;

例如:

我打开的第一个文件是:C:\a\b\c\oldFile.txt

在此文件中,我找到了newFile.txt

所以新路径将是:C:\a\b\c\newFile.txt

很好,但是如果我找到这样的东西:

..\.\.\...

有没有办法自动化这个烂摊子?

由于

2 个答案:

答案 0 :(得分:5)

在C#/ .Net中你有相当酷的Path class

您可以使用Path.GetFullPath( string pathname )来解析路径,例如其中包含\..\等。

使用Path.GetDirectory()Path.GetFileName()Path.GetFileNameWithoutExtension()& Path.GetExtension()将名字分开并Path.Combine()将它们重新组合在一起。

答案 1 :(得分:1)

您已将此标记为java以及c#

在java中查看FileNameUtils http://commons.apache.org/io/apidocs/org/apache/commons/io/FilenameUtils.html

normalize方法应该有帮助