问题标签 [long-filenames]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1021 浏览

ruby - 如何从 ARGV 获取长文件名

我想制作一个将一些文件名作为参数的工具,但是当我使用此代码时:

我在 Windows 中使用拖放或“发送到”,我得到了短文件名。所以像这样的文件"C:\Ruby193\bin\test\New Text Document.txt"成为 C:\Ruby193\bin\test\NEWTEX~1.TXT参数。

当我从命令行运行脚本时没有问题,使用长文件名作为参数。

当我使用拖放或发送到时,如何获得长文件名?

0 投票
2 回答
3049 浏览

encryption - encfs 中的文件名长度限制是否有解决方法?

我将 Dropbox 与 encfs 一起使用。问题是我的主机仅支持文件名中的 256 个字符,因此 encfs 仅支持 ~190。有没有办法在不重新安装和增加主机文件系统限制的情况下避免这种情况?

我主要在 Ubuntu 11.10 中使用 ext4 作为文件系统,但在 Mac OSX 10.6 中使用 hfs 作为文件系统,此时 Windows 对我来说并不那么重要。

干杯,布鲁贝尔。

0 投票
2 回答
1054 浏览

c# - 使用长文件路径执行文件

我正在尝试编写一个程序来传递一个作为文件名的字符串。然后我希望程序启动/打开我作为参数传递的文件。

我做了一些研究,我很确定我必须使用这样的东西: 链接

但我只找到了打开(为了写入)文件、删除和查找文件的示例。质谱库

我在调整代码时遇到了麻烦。

谁能帮我?这是我想出的:

编辑: 对于我不想要的东西似乎有些困惑,所以我会试着澄清一下。

我有一个 FoxPro 应用程序,其中存储了记录。对于其中一些记录,我想关联图像或文档,因此我将其路径存储到数据库中的字段中。到目前为止,一切都很好。问题是文件上升到几个 TB(这是正确的 Tera 字节),并且路径比 Windows API 允许的最大值长得多。

我想直接从 Fox 中打开这些文件,但 Fox 不支持长路径。所以我想用 C# 编写一个应用程序,我将长文件名作为参数传递并让它由该应用程序打开......

问题是 C# 也“继承”了 Windows API 的限制。我遇到了一种解决方法,用于删除、移动和打开(在编辑模式下)具有此类长路径的文件。但我想要的只是让 Windows 打开文件并将其显示给用户。

希望我说清楚了。抱歉英语不好。

0 投票
2 回答
911 浏览

machine-learning - 文件名中的键值对是否有标准的文件命名约定?

我有多个以它们包含的内容命名的数据文件。例如

键和值由 - 和 _ 分隔。有更好的语法吗?是否有自动读取这些类型的文件/文件名的解析器?

这里的想法是文件名是人类机器可读的。

0 投票
3 回答
3206 浏览

ruby - 将长文件名转换为短文件名 (8.3)

我想将长文件名/路径转换为短文件名(8.3)。我正在开发一个脚本,它调用只接受短文件名的命令行工具。

所以我需要转换

C:\Ruby193\bin\test\New Text Document.txt

C:\Ruby193\bin\test\NEWTEX~1.TXT

到目前为止,我找到了如何从 ARGV 获取长文件名,它使用 WIN32API 将短文件名转换为长文件名(与我想要实现的相反)。

有没有办法在 Ruby 中获取短文件名?

0 投票
3 回答
78359 浏览

windows - 使用 cmd.exe 将长文件名转换为短文件名 (8.3)

我正在尝试在 Windows 上将长文件名转换为短文件名 (8.3)。

带有命令行参数的批处理文件按预期工作:

短.bat

调用short.bat C:\Documents and Settings\User\NTUSER.DAT返回C:\DOCUM~1\USER\NTUSER.DAT

但是,我不喜欢为此添加额外的 .bat 文件。我宁愿cmd.exe用 ruby​​ 脚本中的整个命令调用。我怎样才能做到这一点?

作为中间步骤,我尝试对批处理文件中的路径进行硬编码,但这不起作用:

短1.bat

echo %filename%有效,但echo %~sfilename%出现以下错误:

如果short1.bat有效,我怎样才能将其转换为可以调用的单线cmd.exe \c ...

还有另一个问题(如何获取 DOS 路径而不是 Windows 路径),但是该问题专门询问当前目录的路径。

0 投票
0 回答
279 浏览

macos - MacOsX HFS+ 通过在末尾添加哈希符号和数字来破坏长 utf-8 文件名

我是 MacOsX 10.6 的用户。前段时间我发现我无法获取 git changes

我做了一些研究,我认为问题在于 UTF-8 字符。我试图创建新文件

文件看起来已损坏。它的末尾有一些数字。您可以复制它,例如:

当我通过 vim 编辑器成功打开“132_chars_file_name_with_numbers_at_the_end”并对其进行编辑时。但是当我输入 ":wq" 文件时消失了。

有一些解决方法吗?我该如何解决?

0 投票
2 回答
1095 浏览

file-upload - CFSCRIPT - 如何在上传前检查文件名的长度

我在上传具有超长名称的文件时遇到了这个问题 - 我的数据库字段仅设置为 50 个字符。从那时起,我增加了我的数据库字段长度,但我想有办法在上传之前检查文件名的长度。下面是我的代码。验证返回 '85' 作为字符长度。它为我上传的每个不同文件返回相同的计数(没有一个文件名长度为 85)。

有人看到这有什么问题吗?

谢谢!

0 投票
1 回答
7571 浏览

c++ - 打开名称中包含空格的文件

我在打开名称中有空格的 C++ 文件时遇到问题。例如,打开文件read me.txt.

这是我到目前为止的代码,涉及一个读取文件并将字数输出到控制台的命令:

我知道流函数c_str()在空格后不能读取多个字符串。我正在考虑使用子字符串,但我不完全确定如何进行。你们能帮帮我吗?

0 投票
2 回答
4224 浏览

filesystems - FAT32:分别设置长文件名和8.3文件名

我需要构建一个 SDHC 卡(FAT32),其中包含一个我独立选择短文件名和长文件名的目录。例如短文件名MYDIR但长名称i am a cool name. yeah. check out the awesomeness.根据维基百科,这两个名称之间没有强制关联,所以我的目标应该是可能的:

从 LFN 创建 8.3 名称没有强制算法

-- http://en.wikipedia.org/wiki/8.3_filename#Overview

我可以使用任何必要的系统来执行此操作(windows、mac、linux、十六进制编辑器),但越简单越好。谢谢!