为啥这不重命名我的文件? [复制]
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
【讨论】:
以上是关于为啥这不重命名我的文件? [复制]的主要内容,如果未能解决你的问题,请参考以下文章