为了账号安全,请及时绑定邮箱和手机立即绑定

如何写入文件名中包含空格和特殊字符的文件?

如何写入文件名中包含空格和特殊字符的文件?

临摹微笑 2023-10-06 11:06:39
我正在尝试写入一个名为data/STO: INVE-B-TIME_SERIES_DAILY_ADJUSTED-1.csv在 Windows 上使用以下 python 代码overwrite = "w"  # or write newf = open(OutputPath(copyNr), overwrite)f.write(response.content.decode('utf-8'))f.close()print(f"Wrote to file: {OutputPath(copyNr)}")控制台中的输出是正确的,但写入的文件仅导致data/STO路径似乎被剪切。我尝试使用此答案中的方法转义字符,但这给了我以下文件名的 invalid_argument 异常:data/STO\\:\\ INVE-B-TIME_SERIES_DAILY_ADJUSTED-1.csv当我删除空格时,我遇到了同样的错误,但它似乎仍然在 处剪辑:。如何在文件名中包含此类字符?
查看完整描述

2 回答

?
智慧大石

TA贡献1946条经验 获得超3个赞

你不能。仅在卷分隔符上允许使用冒号 - 其他任何地方都是非法的。

允许:

d:/somedir/somefile.txt

非法的:

./some:dir/somefile.txt

作为分隔符,您可以使用'\\''/'- 两者都应该被理解。

这不是 python 限制,而是操作系统限制。

查看完整回答
反对 回复 2023-10-06
?
婷婷同学_

TA贡献1844条经验 获得超8个赞

Windows API 不允许在文件名中出现冒号,它是为驱动器号保留的,请使用不同的符号。



查看完整回答
反对 回复 2023-10-06
  • 2 回答
  • 0 关注
  • 143 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信