【问题标题】:MIME type to extension Windows Universal appMIME 类型以扩展 Windows 通用应用程序
【发布时间】:2014-05-05 09:30:24
【问题描述】:

我正在用 c# 制作一个 Windows 通用应用程序。我从我的服务器获得了一个 MIME 类型,我必须保存一个文件,该文件具有该 MIME 类型所代表的扩展名。如何以适用于 Windows 通用应用程序的方式将此 MIME 类型转换为文件扩展名,因此适用于 Windows Phone 8.1 和 Windows 8.1?

我不介意:

#if Windows_Phone
{code}
#elif
{code}
#endif

建筑。

【问题讨论】:

  • 如果你不介意这样的结构,那么maybe this
  • 感谢您的评论。但是,这并不能解释将 MIME 类型转换为文件扩展名的任何内容。
  • 是的,我知道,我刚刚添加了#if 构造的样子。目前我无法帮助您进行 MIME 类型转换,也许其他人会这样做。

标签: c# windows mime-types windows-8.1 windows-phone-8.1


【解决方案1】:

在 W8 和 WP8 中,您都无法访问注册表或任何类似的 Windows 魔法。我只知道一个例外:Windows.Graphics.Imaging.BitmapDecoder.GetDecoderInformationEnumerator() 会告诉您有关 mimetypes 和扩展名的信息,但仅限于本地计算机上安装的图像格式。

您可能需要手动创建一个从 mimetype 映射到扩展名的字典。 请注意:这是一项永无止境的任务。例如。 mimetype "audio/x-mpegurl" 有两个扩展名:.m3u 和 .m3u8。同时,许多服务器声称 .m3u 文件的 mimetype 为“audio/m3u”。所以你最终会一遍又一遍地调整和更新这本字典......

【讨论】:

    【解决方案2】:

    恐怕没有可用的平台 API。您需要创建自己的映射。

    【讨论】:

    • 感谢您的回答,您对如何执行此操作有建议吗?我在谷歌上搜索了一下,找到了使用注册表项的选项,但这在 windows phone 和 windows store 应用程序上不可用(据我所知)。
    猜你喜欢
    • 2018-11-29
    • 2011-07-30
    • 2011-05-14
    • 2014-01-06
    • 2013-04-19
    • 1970-01-01
    • 2018-07-07
    • 1970-01-01
    • 2012-10-01
    相关资源
    最近更新 更多