3

我正在创建一些文件,并且正在从数据库中获取文件名。

有一个文件名叫做

CUA/ICOR 数字收藏。

但是,由于正斜杠,“CUA”被视为目录。

在 Java Regex 中找到了正斜杠

我试过了:

String fileName = "CUA/ICOR Digital Collection";
fileName = fileName.replaceAll("/", "\\\\/");  // OP: CUA\/ICOR Digital Collection But No success

fileName = fileName.replaceAll("/", Matcher.quoteReplacement("\\/"));  // OP: CUA\/ICOR Digital Collection But No success

fileName = fileName.replaceAll("/", Matcher.quoteReplacement("\\\\/"));  // OP: CUA\\/ICOR Digital Collection But No success

File file = new File(exportPath, fileName + ".xls");

我正进入(状态

File Not Found Exception At 'C:\export\CUA\ICOR Digital Collection.xls'

所以,现在我怀疑这可能吗?

4

2 回答 2

5

在 Windows 上,文件不能包含/\:*?"<>|

你最好将/字符转换为下划线之类的东西(_)

于 2012-09-13T18:11:17.540 回答
0

如果你在Windows....我不认为你的文件名可以有变量\

您可以尝试将其转换为 a spaceor underscore....

所以它会是这样的......

CUA_ICOR Digital Collection

或者

CUA ICOR Digital Collection.

于 2012-09-13T18:14:55.700 回答