如何在文件名中强制使用非法字符?[已结束]

How can I force illegal characters in a file name? [closed]

提问人:Will_B 提问时间:12/21/2013 最后编辑:Martijn PietersWill_B 更新时间:6/29/2020 访问量:604

问:


想改进这个问题吗?通过编辑这篇文章添加详细信息并澄清问题。

9年前关闭。

我试图找到一种方法来强制将非法字符添加到文件名中。特别是“:”和“/”

我们会通过电子邮件定期收到自动更新。这些电子邮件的主题中始终包含非法字符。我们目前手动保存这些电子邮件,以便以主题为文件名的文本文件进行处理。这个过程有效,但很乏味。

我编写了一个用于保存文件的 VBA 脚本,并且正在开发一个小型 C# 应用程序,该应用程序在将这些文件发送到我们的服务器之前在本地处理这些文件。

Outlook 脚本只是在保存之前将非法字符替换为标记:

sTemp = Replace(sTemp, "/", "{FS}")
sTemp = Replace(sTemp, ":", "{CO}")

我需要找到一种方法来在VBA脚本中按原样保存文件,或者在本地处理时将标签更改回非法字符。

该团队的大多数成员使用 Outlook 2008/10 运行 Windows 7 x64。

C# VBA Outlook

评论

0赞 nphx 12/21/2013
您正在寻找一种在 Windows 上保存名称包含“/”的文件的方法?
3赞 Ken White 12/21/2013
您不能保存具有非法文件名的文件。(如果可以的话,文件名一开始就不是非法的,不是吗?
0赞 David Arno 12/21/2013
“在将这些文件发送到我们的服务器之前在本地处理这些文件”是什么意思?文件是保存到服务器,还是以某种方式处理内容,例如写入数据库?
0赞 Will_B 12/21/2013
Ken:我可以手动保存带有冒号和正斜杠的文件,而不会在 Windows 中出现问题,我觉得这很愚蠢,但如果不中断进程就无法解决这个问题。
0赞 Will_B 12/21/2013
David:基本上,当我们获得这些更新时,我(或团队成员)必须将电子邮件保存到一个文件夹中,枚举每封邮件并生成一个列表。然后,我们将此文件夹压缩起来,并将其转移到位于我们内部网络之外的服务器上,并处理每个请求。

答:

1赞 Will_B 12/21/2013 #1

最好的解决方案似乎是干脆不要。我将重新设计我们处理这些消息的方式,而不是试图强制这种行为。