问题标签 [file-type]

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 投票
3 回答
401 浏览

c# - 列出处理指定文件类型的所有应用程序

是否可以仅使用文件扩展名列出机器上可以打开特定文件类型的所有应用程序?例如,如果我有一个文本文件 (.txt),我想要一个可以打开 .txt 文件的所有应用程序的列表。

0 投票
3 回答
1012 浏览

c# - 从 C# 应用程序打开文件时,是否值得在注册表中查找默认应用程序?

我正在构建一个应用程序(一个可能不止一次获得stackoverflow社区帮助的辅助项目),它需要打开各种文件类型(即在Word中打开Word文档,而不是在我的应用程序中本机)。

我一直在使用一些代码来查找注册表中文件类型的默认应用程序并将其传递给 Process.Start()。这种方法似乎有两个问题:

1) 在某些情况下引用应用程序名称,而在其他情况下不引用。
2) Process.Start() 要求应用程序路径及其参数分别传递(即 Process.Start("notepad.exe", @"C:\myfile.txt"); 而不是 Process.Start(@"notepad .exe C:\myfile.txt");)。

这意味着当我从注册表中检索路径时,我必须拆分它(在确定是否需要拆分引号或空格之后)以确定哪些部分是应用程序路径以及哪些部分是参数,然后将它们分别传递给 Process。开始()。

另一种方法似乎是只传递文件名,如 Process.Start(@"C:\myfile.txt"),但我认为这仅在应用程序位于 Path 环境变量中时才有效。

哪种方式更好?在注册表的情况下,如何进行参数解析是否有通用解决方案?

感谢您的任何帮助!

更新:
我想简短的回答是“不”。
似乎我真的走的是矫枉过正的路线,只要注册表中有关联的值,只传递文件名就可以工作。即我自己在注册表中找到的任何东西,Process.Start() 已经知道该怎么做。

我确实发现,当我使用“新”文件类型尝试此操作时,我得到一个 Win32Exception 说明“没有应用程序与此操作的指定文件相关联”。Fredrik Mörk 在评论中提到这在 Vista 中不会发生在他身上。处理这个问题的正确方法是什么?

0 投票
3 回答
3586 浏览

php - PHP - 只读电子表格文件类型?

我正在使用一个简单的基于 Web 的 PHP 应用程序,它将表格输出为电子表格

但我发现下载的电子表格作为只读文件打开,必须保存在本地,并且(在 Windows 上的 Excel 中)类型更改为 XLS(来自 HTML)。有没有办法正确设置文件类型的属性,以便进行简单的保存不需要更正文件类型?

下载的文件是出于安全性而只读还是不正常?

此外,我不喜欢在 Excel 或 OpenOffice(Linux 上)中打开电子表格时创建的自动边框。我宁愿没有边框格式。文件中有没有办法指定不添加格式,或者这是否内置在这些应用程序中?

0 投票
2 回答
2096 浏览

filesystems - 文件类型指示符,sys/stat.h st_mode 常规文件代码值

我正在尝试识别目录条目的文件类型(Windows Unix 等)。

在 sys/stat.h 中,st_mode 字的高位 nybble 具有编码值:

从评论看来,nybble 可以是 0 或 8 来表示“常规文件”。

所以这就引出了一个问题:在什么情况下它是 0 而不是 8?如果我定义了这些代码,我会保留 0 来表示未知/未定义/无效/非文件或类似的东西。

实际上 S_ISREG 宏是:

在我看来,这似乎表明应该始终期望常规文件具有代码 8(而 0 将是一个缩写?)。

将 0 解释为未知或无效文件并忽略“或只是 0x0000”注释并始终期望 8 用于所有常规文件是否是一个有效的假设?

0 投票
2 回答
4415 浏览

.net - 如何在 Visual Studio 中将自定义默认生成操作与自定义文件类型相关联?

我有一个为自定义文件类型构建的语言服务。

此外,我还在我的 MSBuild 项目文件中创建了一个自定义目标(构建操作)。但是,我无法找到任何方法将该构建操作默认关联到我的自定义文件扩展名。

例如,如果您添加一个 .cs 文件,则构建操作默认为“编译”。我想为我做同样的事情。即当添加一个 .dsl 文件时,我希望构建操作是“生成”,这是我的自定义目标(因此是构建操作)。

有没有办法不使用项目向导?

0 投票
5 回答
24689 浏览

php - 如何确定与 PHP 中的 MIME 类型关联的扩展名?

是否有一个快速而肮脏的 MIME 类型映射到我可以使用的 PHP 扩展?

0 投票
5 回答
1955 浏览

asp.net - 使用 RegularExpressionValidator 验证 asp:UploadFile 文件名时出现问题

我在设置文件中有一行我想要允许的所有文件类型:

我想在 FileUpload 控件旁边有一个仅允许这些文件的 RegularExpressionValidator。

我在设置正则表达式验证器的 ValidationExpression 属性的 PageLoad 事件中处理它。

我试过:

但它区分大小写。我现在唯一的问题是让它不敏感。

0 投票
4 回答
3356 浏览

c# - 在 .NET 中注册文件类型和自定义文档图标

我有生成文件的应用程序。我想将这些文件与应用程序连接起来,以便双击文件启动我的应用程序。

一切正常,除了图标看起来像我的应用程序图标的烦恼。我想要一个应用程序图标和一个文件图标。

注册表中的 DefaultIcon 值需要“app.exe,1”语法,其中 1 是图标索引。.NET 资源似乎不是 Win32 资源。

我尝试了以下但没有成功:

  1. 选择“嵌入式资源”作为文件的构建操作。
  2. 将图标添加到资源文件。

唯一有效的是将图标文件与可执行文件分开并指向它。然而,在我看来,这就像投降。

任何想法如何解决这个问题?

0 投票
4 回答
684 浏览

php - how to use htaccess to disguise filetypes

I want to be able to name my files with whatever extension I choose. In this case let’s use .foo, and then process them as PHP files.

Right now my .htaccess looks like this

But it doesn’t work, it still prompts me to download the file when I access it.

Any advice or tips?

0 投票
3 回答
3860 浏览

syntax-highlighting - Vim 语法和文件类型检测的非常奇怪的行为

我有一个名为 WrongFileTypeDetection.R 的文件,其中包含以下文本:

我也有两个版本的 _vimrc,我认为它们是完全一样的。但是,当我使用第一个版本时,上述文件被错误地检测为“conf”文件,即使我已明确要求将所有以 .R 结尾的文件设置为 filetype=r。当我更改为第二个版本(将“语法”移到 augroup 定义后面)时,检测再次正常工作。请注意,这是我唯一的配置(我在调试时移开了我的标准 vimrc)。

第一个版本:

第二个版本:

vimrc 似乎对这两个文件的特定顺序非常敏感。为什么会这样,考虑到其中一行是自动命令,无论如何都会在很久以后运行?这是 Vim 中的错误还是我只是不理解的功能?