为啥这不重命名我的文件? [复制]

Posted

技术标签:

【中文标题】为啥这不重命名我的文件? [复制]【英文标题】:Why is this not renaming my file? [duplicate]为什么这不重命名我的文件? [复制] 【发布时间】:2014-06-15 10:29:17 【问题描述】:

我正在使用 file.copyfile 重命名我的文件,但它似乎不起作用文件名保持不变?

    Dim _filename As String
    Dim _path As String
    Dim _newfilename As String

    _filename = Path.GetFileNameWithoutExtension(filename)
    _path = Path.GetDirectoryName(filename)
    _newfilename = _filename & "." & extension
    My.Computer.FileSystem.CopyFile(filename,
    _newfilename, True)

【问题讨论】:

复制文件不会重命名文件 - 它会复制它。请您编辑您的问题以明确说明您要做什么?你可能想看看 File.Move (***.com/questions/3218910/rename-a-file-in-c-sharp) 根据文档,它确实会重命名文件msdn.microsoft.com/en-us/library/36xbexyf(v=vs.90).aspx 文档并没有说它会重命名原始文件。它可以覆盖现有文件或复制到新名称(重命名),但原始文件将保持不变,除非您按照其他 cmets 移动它 对不起.. 误读了 RB 的答案。 @SysDragon 这可能是概念上的重复,但坦率地说,这个答案很糟糕。那是最好的骗局吗?如果是这样,那么这里更完整的答案会更好地为社区服务。 【参考方案1】:

你可以试试这个:

My.Computer.FileSystem.RenameFile(currentFileName, NewFileName)

http://msdn.microsoft.com/en-us/library/5w05844e.aspx

我认为您下面的代码将 _newfilename 设置为文件名,并且不包括目录。我认为该文件正在被复制到运行应用程序的根文件夹中。我认为 RenameFile 应该可以满足您的需要。让我知道这是否可以。

_newfilename = _filename & "." & extension

【讨论】:

以上是关于为啥这不重命名我的文件? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 6如何重命名复制的目标

文件夹为啥无法重命名?

为啥我重命名后无法访问 pandas 中的列? [复制]

为啥视频重命名以后文件格式不支持

批量复制重命名,重复时提示

如何根据子文件夹复制文件和重命名