相关疑难解决方法(0)

将字符串转换为有效的文件名?

我有一个字符串,我想用作文件名,所以我想删除文件名中不允许使用Python的所有字符.

我宁愿比其他方面更严格,所以让我说我只想保留字母,数字和一小部分其他字符"_-.() ".什么是最优雅的解决方案?

文件名需要在多个操作系统(Windows,Linux和Mac OS)上有效 - 它是我的库中的MP3文件,歌曲标题为文件名,并在3台机器之间共享和备份.

python filenames sanitize slug

269
推荐指数
19
解决办法
15万
查看次数

NTFS(Windows XP和Windows Vista)中的文件名长度是多少?

我正在设计一个数据库表,它将保存上传文件的文件名.Windows XP或Vista使用的NTFS文件名的最大长度是多少?

filenames windows-xp ntfs windows-vista name-length

249
推荐指数
8
解决办法
44万
查看次数

文件名中允许的字符

在哪里可以找到文件名中允许的字符列表,具体取决于操作系统?(例如在Linux上,字符:在文件名中是允许的,但在Windows上不允许)

filenames special-characters

118
推荐指数
4
解决办法
15万
查看次数

是否可以在文件名中使用"/"?

我知道这不是应该做的事情,但有没有办法使用斜杠字符,通常在Linux中分隔文件名中的目录?

unix linux directory filenames slash

98
推荐指数
4
解决办法
6万
查看次数

有没有办法在c#中使字符串文件路径安全?

我的程序将从互联网上获取任意字符串并将其用于文件名.有没有一种简单的方法从这些字符串中删除坏字符或我是否需要为此编写自定义函数?

.net c# string filepath

84
推荐指数
10
解决办法
6万
查看次数

如何安全地从URL获取文件扩展名?

请考虑以下网址

http://m3u.com/tunein.m3u
http://asxsomeurl.com/listen.asx:8024
http://www.plssomeotherurl.com/station.pls?id=111
http://22.198.133.16:8024

什么是确定文件扩展名(.m3u/.asx/.pls)的正确方法?显然,最后一个没有文件扩展名.

编辑:我忘了提到m3u/asx/pls是音频流的播放列表(文本文件),必须以不同的方式进行解析.目标确定扩展,然后将url发送到正确的解析函数.例如


url = argv[1]
ext = GetExtension(url)
if ext == "pls":
  realurl = ParsePLS(url)
elif ext == "asx":
  realurl = ParseASX(url)
(etc.)
else:
  realurl = url
Play(realurl)
GetExtension()应该返回文件扩展名(如果有的话),最好不要连接到URL.

python file

20
推荐指数
5
解决办法
2万
查看次数

python 中确保字符串适合作为文件名的优雅方法?

我想使用用户提供的字符串作为导出的文件名,但必须确保该字符串在我的系统上允许作为文件名。从我的角度来看,可以用“_”等替换任何禁止的字符。

在这里我找到了文件名禁止字符的列表

使用该功能应该很容易str.replace(),我只是想知道是否已经有东西可以做到这一点,甚至可能考虑到我所在的操作系统。

python filenames

7
推荐指数
1
解决办法
1万
查看次数

检查文件名是否有效

在所有平台(包括Android,iOS等移动平台)上检查文件名是否在Python中有效的最保守的方法是什么?

防爆.

this_is_valid_name.jpg - >有效

**adad.jpg - >无效

a/ad - >无效

python

6
推荐指数
1
解决办法
1万
查看次数

如何在Java中检索文件名的禁用字符?

对于文件和目录名称,存在一些受限制的字符(甚至是Windows中的完整文件名).这个问题已经涵盖了他们.

在Java中,有没有办法检索这个禁止字符列表,这取决于系统(有点像检索断路器字符)?或者我可以自己放置列表,检查系统?


编辑:除了一般性问题之外,还有更多关于我特定情况的背景信息.

我使用默认名称,来自某些数据(没有对其内容的真正控制),并且此名称将提供给JFileChooser,作为要使用的默认文件名(with setSelectedFile()).但是,这个会在最后一个无效字符之前截断任何内容.

这些默认名称有时会以"mm/dd/yy"格式结束日期,默认名称只留下"yy",因为"/"是禁止的.因此,检查Exceptions并不是一个真正的选项,因为文件本身甚至还没有创建.

编辑之二:嗯,这让我想到,如果JFileChooser正在截断名称,它可能有权访问这些字符的列表,可以进一步检查这一点.

编辑ter:好的,检查来自JFileChooser的来源显示了一些非常简单的东西.对于文本字段,它使用file.getName().它实际上并不检查无效字符,它只是将"/"作为路径分隔符,并仅保留结尾,即"实际文件名".其他禁止的角色实际上经历了.

java filenames

5
推荐指数
1
解决办法
2432
查看次数

如何检查字符串在非托管C++代码中是否具有有效的文件路径或目录路径格式?

我想知道如何检查(在非托管的Visual C++代码中)字符串是否具有表示文件路径或文件夹路径的有效格式.在这种情况下,物理文件或文件夹路径本身可能存在也可能不存在.在我的情况下,检查正确的字符串格式是主要目标.我需要知道一个字符串是否具有正确的格式作为有效的文件路径或它没有?C#有很多关于它的帖子,但没有一个关于非托管C++的帖子.如何在Visual C++中的非托管C++中执行此操作?

c++ string-formatting filepath

5
推荐指数
1
解决办法
2万
查看次数