处理文件路径和名称中的无效字符
本文解决了可靠地删除或替换文件路径和文件名中的无效字符的挑战。 先前建议的使用 Trim
方法的解决方案被证明是不够的。 关键是主动操作字符串来达到想要的结果。
方法一:删除无效字符
一种简单的方法是在每个无效字符处拆分字符串,然后连接剩余部分:
<code class="language-csharp">public string RemoveInvalidChars(string filename) { return string.Concat(filename.Split(Path.GetInvalidFileNameChars())); }</code>
此方法有效地消除了 Path.GetInvalidFileNameChars()
识别为无效的任何字符。
方法二:替换无效字符
对于保留原始字符串结构很重要的场景,最好用合适的替代品(例如下划线)替换无效字符:
<code class="language-csharp">public string ReplaceInvalidChars(string filename) { return string.Join("_", filename.Split(Path.GetInvalidFileNameChars())); }</code>
这种方法在无效字符处分割字符串,并使用下划线作为替换重新连接片段,确保整个文件名或路径基本保持不变。 这在处理用户提供的文件名时特别有用。
以上是如何可靠地删除或替换文件路径和名称中的无效字符?的详细内容。更多信息请关注PHP中文网其他相关文章!