冒号在Python中的文件名

冒号在Python中的文件名,第1张

概述冒号在Python中的文件名

众所周知,windows中的文件名不能包含冒号。 但是,我遇到了一个问题,可以通过下面的示例代码进行复制:

import os os.chdir('./temp') names = ['a','b','word1: word2','c: file','d: file'] for name in names: with open(name,'w') as f: f.write('foo')

该脚本在./temp目录中创build三个文件: a , b (带“foo”)和word1 (空)。 它还在D:创build一个名为file ,它是可移动存储。 它不会在C:创build任何内容,这需要pipe理员权限才能写入; 但是,它确实在当前工作目录中创build了一个文件。

我不明白三件事情:

为什么不引发任何exception(与其他禁止的字符,我得到IOError)?

为什么word1文件是空的?

为什么在当前工作目录中创build一个文件?

对于/ f循环进程文件名符号符号

从C ++的文件名获取完整path

如何在windows中创build一个具有尾随句点的文件名?

在linux中追加date到文件名

.NET的安全/允许的文件名清理

recursion重命名子文件夹windowsbatch file中的文件

在Python中,如何获得文件的正确path?

如何处理windows的ReadDirectoryChangesW()及其混合的长/短文件名输出?

如何在Perl中编写一个* filename *包含utf8字符的文件?

wget unicode文件名错误

windows NTFS支持文件“流”。 您基本上将数据附加到文件之外的文件,并且无法正常查看。 当您创建文件“word1:word2”时,隐藏的流“word2”被附加到“word1”。 如果您将文件word1复制到另一台NTFS计算机上,那么word2数据将随您一起提供

去这里http://technet.microsoft.com/en-us/sysinternals/bb897440.aspx并下载流程序。 运行它会告诉你,word2是附加到word1的流

这个网页还谈到流: http : //www.forensicfocus.com/dissecting-ntfs-hIDden-streams

要真正证明这一点,你可以使用记事本,但是你需要使用.txt扩展名:

file=open('word1.txt:word2.txt','w') file.write('Testing streams') file.close()

现在,使用cmd程序,将目录更改为您创建文件的位置。 键入以下内容:

c:tmp> notepad word1.txt

你会看到一个空的文件。 现在,试试这个:

c:tmp> notepad word1.txt:word2.txt

您应该看到文本Testing streams 。

总结

以上是内存溢出为你收集整理的冒号在Python中的文件名全部内容,希望文章能够帮你解决冒号在Python中的文件名所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/langs/1159217.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存