如果我有一个字符串说“abc.txt”,有没有一个快速的方法来获得一个子字符串,这只是“abc”?
我不能做一个fileName.IndexOf('.'),因为文件名可以是“abc.123.txt”或其他东西,我显然只是想摆脱扩展名(即。“abc.123”)。
如果我有一个字符串说“abc.txt”,有没有一个快速的方法来获得一个子字符串,这只是“abc”?
我不能做一个fileName.IndexOf('.'),因为文件名可以是“abc.123.txt”或其他东西,我显然只是想摆脱扩展名(即。“abc.123”)。
当前回答
如果你想使用字符串操作,那么你可以使用lastIndexOf()函数,它搜索字符或子字符串的最后一次出现。Java有很多字符串函数。
其他回答
如果你想使用字符串操作,那么你可以使用lastIndexOf()函数,它搜索字符或子字符串的最后一次出现。Java有很多字符串函数。
如果你想创建没有扩展的完整路径,你可以这样做:
Path.Combine( Path.GetDirectoryName(fullPath), Path.GetFileNameWithoutExtension(fullPath))
但我想找一种更简单的方法。有人知道吗?
这个实现应该可以工作。
string file = "abc.txt";
string fileNoExtension = file.Replace(".txt", "");
我使用了下面较少的代码
string fileName = "C:\file.docx";
MessageBox.Show(Path.Combine(Path.GetDirectoryName(fileName),Path.GetFileNameWithoutExtension(fileName)));
输出将是
文件C: \
字符串。LastIndexOf可以工作。
string fileName= "abc.123.txt";
int fileExtPos = fileName.LastIndexOf(".");
if (fileExtPos >= 0 )
fileName= fileName.Substring(0, fileExtPos);