相关疑难解决方法(0)

如何确定文件类型?

我需要知道我的文件是否是音频文件:mp3,wav等...
如何做到这一点?

c# audio mp3 file

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

Tridion内容管理器中的上传文件夹丢失

在将tridion 5.2迁移到Tridion 2011 SP1 HR1时,我们注意到Tridion 2011内容管理器目录中没有上传文件夹.

Tridion 5.2的上传文件夹用于包含上传为多媒体组件的所有文件,甚至在它们存储在Tridion中之前.

由于我们的图像裁剪工具使用了此目录,有没有办法在Tridion 2011中提供此文件夹?

upload tridion tridion-content-manager

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

是否可以从加载到 MemoryStream 的文件中获取文件扩展名或类型?

我正在 C# 中创建一个服务,该服务将由将处理和存储文件的 ASP.Net Web API 使用。

作为 Web API 的一部分,我将文件存储在MemoryStreams 中,然后将其传递给服务进行实际处理和存储。

该服务的一部分是为每个文件生成一个新的文件名。

所以这引出了我的问题,现在是否有可能找出文件的文件类型/扩展名,因为它位于 MemoryStream 中?

c# memorystream

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

如何判断无扩展图像是png还是jpeg

不久之前,我保存了一些由Web服务生成的图像,因此文件名例如是'ysauyft87ggsa67fgeg&w = 1600'.我可以打开并操作这些图像好吧,我只想知道它们是什么编码(几乎可以肯定是png或jpeg).我在OSX中试过'获取信息',但它认为文件只是文本(即使它正确生成缩略图,我可以在预览中查看图像).如果我在服务器上提供图像,则它们将作为"application/octet-stream"传送.

如何通过shell轻松确定它们是png还是jpeg?

shell file-type image

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

在 ASP.Net Core 中验证 IFormFile 的图像类型

我有一个 ASP.NET Core 应用程序,我需要验证上传的文件是图像,而不是具有图像扩展名的非图像文件......我找到的所有解决方案都使用 System.Drawing.Image或 ASP.NET Core 中不可用的类似类。你能提出一个替代方案吗?*请注意,我不是要检查扩展名,而是要检查内容。

谢谢

c# asp.net asp.net-core

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

在 ASP.Net 应用程序中调用非托管代码时获得受保护的内存异常

我从另一个 StackOverflow 答案中找到了一些代码,用于根据从文件的前几个字节读取的内容来发现文件的 MIME 类型。该代码引用了外部 DLL 中的非托管方法。

[DllImport(@"urlmon.dll", CharSet = CharSet.Auto)]
private extern static System.UInt32 FindMimeFromData(
   System.UInt32 pBC,
   [MarshalAs(UnmanagedType.LPStr)] System.String pwzUrl,
   [MarshalAs(UnmanagedType.LPArray)] byte[] pBuffer,
   System.UInt32 cbSize,
   [MarshalAs(UnmanagedType.LPStr)] System.String pwzMimeProposed,
   System.UInt32 dwMimeFlags,
   out System.UInt32 ppwzMimeOut,
   System.UInt32 dwReserverd
);
Run Code Online (Sandbox Code Playgroud)

我调用这个方法,它返回一个 IntPtr,并使用 Marshal.PtrToStringUni 读取存储在指定内存地址的字符串。

System.UInt32 mimetype = 0;
FindMimeFromData(0, null, buffer, maxBytes, null, 0, out mimetype, 0);
System.IntPtr mimeTypePtr = new IntPtr(mimetype);
string mime = Marshal.PtrToStringUni(mimeTypePtr);
Marshal.FreeCoTaskMem(mimeTypePtr);
Run Code Online (Sandbox Code Playgroud)

请注意,maxBytes 被硬编码为 256,缓冲区最多可容纳被检查文件的前 256 个字节。

调用 Marshal.PtrToStringUni(mimeTypePtr) 会引发 AccessViolationException,并显示消息“尝试读取或写入受保护的内存。这通常表明其他内存已损坏。”

该逻辑在 Windows 窗体或控制台应用程序中使用时运行良好,因此它似乎是一些仅适用于 ASP.Net 应用程序的安全措施。有谁知道从 ASP.Net 调用这个非托管方法需要什么?我还想找到一种更好的方法来派生文件的 …

.net c# asp.net access-violation

4
推荐指数
1
解决办法
2149
查看次数

如何移动没有文件扩展名的文件?C#

if (File.Exists(@"C:\\Users" + Environment.UserName + "\\Desktop\\test"))
{                                                                /\
                                               this file has no file extension
}          
Run Code Online (Sandbox Code Playgroud)

该文件test没有扩展名,我需要帮助将此文件移动或重命名为具有扩展名的文件

c# io file

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

我怎样才能上传jpeg文件?

我想上传只有jpeg,jpg等的文件.但我无法在打开的窗口中过滤文件.我想在asp.net中将文本"所有文件"更改为jpeg等.(C#)

c# asp.net upload file-upload photo

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

检测文件是否为CSV而不检查C#中的扩展名

如何在不检查其扩展名的情况下检查目录中的文件是否为CSV文件?

c# csv

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

确定Byte数组是什么?

我最近开始学习C#Networking,我想知道如何判断收到的Byte数组是文件还是字符串?

c# byte

-3
推荐指数
1
解决办法
983
查看次数

从没有扩展名的文件中获取扩展名

是否有任何方法可以获得(实际猜测!)扩展文件?在我的程序中,我得到一个文件,应用程序分析它以理解它是ZIP还是MOV.

我发现了这个,但它不支持MOV和ZIP.

更新:

通过创建包含文件签名的前8位的文本文件.以下代码,我可以确定每个没有扩展名的文件. 这个页面可能是一个很好的参考.

        string rootPath = $"{name}";
        using (FileStream fsSource = new FileStream(rootPath, FileMode.Open, FileAccess.Read))
        {
            byte[] fileBytes = new byte[8]; // the number of bytes you want to read
            fsSource.Read(fileBytes, 0, 8);

            /*
             zip = 50-4B-03-04-0A-00-00-00
             mov = 00-00-00-20-66-74-79-70
             html = 3C-21-64-6F-63-74-79-70
             rar 1 = 52-61-72-21-1A-07
             rar 5 = 52-61-72-21-1A-07 

            */
            string filestring = BitConverter.ToString(fileBytes);
            // string filestring = Encoding.UTF8.GetString(fileBytes); 
            File.WriteAllText($"{DownloadPath}\\filestring.txt", filestring);
        }
Run Code Online (Sandbox Code Playgroud)

.net c# winforms

-3
推荐指数
1
解决办法
89
查看次数