【问题标题】:Drilling into a drive and changing folder names & document names钻入驱动器并更改文件夹名称和文档名称
【发布时间】:2010-05-11 01:08:31
【问题描述】:

我的计算机上有一个包含文件夹的驱动器 - 其中一些文件夹中有很多文件夹,其他文件夹中还包含文件。
我需要将这些文档迁移到 sharepoint,但是这些文件夹和文件中有很多包含无效字符,不允许我迁移到 sharepoint(即“/\ & 等)

有没有什么方法可以用 C# 编写一些东西,基本上从所有文件夹和文件中删除这些无效字符?

请帮忙!

【问题讨论】:

    标签: c# sharepoint


    【解决方案1】:

    是的。一种方法是递归地钻取目录结构,并为每个文件名检查它是否有效,如果无效,则创建一个有效的文件名,然后上传到 Sharepoint。

    您可以创建一个匹配所有不允许的字符的正则表达式,并将它们替换为允许的字符,例如下划线。如果您需要名称是唯一的,并且您担心使用这种方法可能会创建重复的名称,请将所有已使用的名称(即上传到 Sharepoint)存储在 HashSet 之类的东西中,并在使用生成的名称之前进行检查。如果名称已存在,您可以添加前缀或后缀、人工干预标志或执行其他操作,具体取决于您的要求。

    【讨论】:

    • Microsoft.SharePoint.Utilities.SPUrlUtility.IndexOfIllegalCharInUrlLeafName(string strLeafName) 将有助于检测无效字符。
    • 我是正则表达式的新手——所以如果我试图删除以下字符:" # % & * : ? \ / { | } ~ 我将如何使用 RegEx 编写这个?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多