午夜视频在线观看区二区-午夜视频在线观看视频-午夜视频在线观看视频在线观看-午夜视频在线观看完整高清在线-午夜视频在线观看网站-午夜视频在线观看亚洲天堂

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

【C#】獲取圖像(jpeg/jpg/png/gif/bmp/tiff)的正確格式 - 二進(jìn)制頭判斷

admin
2025年4月17日 20:57 本文熱度 136
?    

本文描述C#如何使用二進(jìn)制頭判斷圖像的正確格式。

前言 



在學(xué)習(xí)Halcon的過程中,遇到了一些問題,就是讀取圖像后綴明明是png格式的,路徑也是正確的,但是讀取時圖像就是報錯,這是為什么呢?

經(jīng)過一番檢查發(fā)現(xiàn),是不小心修改了圖像后綴名導(dǎo)致的報錯,那么該如何判斷圖像的正確格式呢,其實(shí)每種圖像格式都有其獨(dú)特的二進(jìn)制頭部標(biāo)識,通過讀取圖像的二進(jìn)制頭就可以判斷圖像的正確格式。

下面我們將介紹如何使用 C# 讀取圖像的二進(jìn)制頭標(biāo)識判圖像文件的正確格式。


幾種常用的圖像頭部標(biāo)識:

JPEG: 0xFF, 0xD8

PNG:  0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A

GIF:   0x47, 0x49, 0x46

BMP: 0x42, 0x4D

TIFF:  0x49, 0x49, 0x2A, 0x00 或 0x4D, 0x4D, 0x00, 0x2A


優(yōu)點(diǎn):準(zhǔn)確可靠,確保文件頭與圖像格式匹配。

缺點(diǎn):需要解析文件內(nèi)容,稍微占用資源。


運(yùn)行環(huán)境 



操作系統(tǒng):Window 11

編程軟件:Visual Studio 2022

.Net版本:.Net Framework 4.6

代碼 



(一)代碼    
   

#region 判斷圖像的正確格式/// <summary>/// 圖像格式工具:獲取正確的圖像格式,通過圖像文件的二進(jìn)制頭部圖像格式標(biāo)識。/// </summary>public static ImageFormat GetImageFormat(string filePath){    using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read))    {        using (BinaryReader br = new BinaryReader(fs))        {            // 讀取文件的前幾個字節(jié)            byte[] headerBytes = br.ReadBytes(16);            // 根據(jù)文件的前幾個字節(jié)判斷圖像的實(shí)際格式            if (IsJpeg(headerBytes))            {                return ImageFormat.Jpeg;            }            else if (IsPng(headerBytes))            {                return ImageFormat.Png;            }            else if (IsGif(headerBytes))            {                return ImageFormat.Gif;            }            else if (IsBmp(headerBytes))            {                return ImageFormat.Bmp;            }            else            {                // 默認(rèn)返回未知格式                return null;            }        }    }}private static bool IsJpeg(byte[] headerBytes){    // JPEG 文件的前兩個字節(jié)是 0xFF, 0xD8    return headerBytes.Length >= 2 && headerBytes[0] == 0xFF && headerBytes[1] == 0xD8;}private static bool IsPng(byte[] headerBytes){    // PNG 文件的前八個字節(jié)是固定的簽名:137 80 78 71 13 10 26 10    return headerBytes.Length >= 8 && headerBytes[0] == 137            && headerBytes[1] == 80 && headerBytes[2] == 78            && headerBytes[3] == 71 && headerBytes[4] == 13            && headerBytes[5] == 10 && headerBytes[6] == 26            && headerBytes[7] == 10;}private static bool IsGif(byte[] headerBytes){    // GIF 文件的前三個字節(jié)是 "GIF"    return headerBytes.Length >= 3 && headerBytes[0] == 71            && headerBytes[1] == 73 && headerBytes[2] == 70;}private static bool IsBmp(byte[] headerBytes){    // BMP 文件的前兩個字節(jié)是 "BM"    return headerBytes.Length >= 2 && headerBytes[0] == 66        && headerBytes[1] == 77;}#endregion


該文章在 2025/4/19 10:11:55 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場、車隊、財務(wù)費(fèi)用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产成人手机在线视频在线观看 | 国产三级不卡在线观看 | 国产福利一区二区三区在线视 | 精品人妻少妇一区 | 国产三级国产精品 | 国产女人高潮抽搐喷水视频 | 国产超高清麻豆精品传媒麻豆精品 | 国产a级理论片免费播放 | 成人精品日本亚洲成熟 | 91网站免费看 | 国产精品成人一区二区三区视 | 国产精品粉嫩在 | 国产成人久久av免费看澳门 | 国产欧美日韩v另类在线播放 | 精品国产人妻一区二 | 成人免费一区二区三区 | 高清在线亚洲精品国产二区 | av中文字幕综合 | 国产福利小视频 | av一级中文在线观看 | 精品无码国产自产在线观看 | 国产91司机在线观看 | 国产精品一区二区在线观看欲臀 | 国产精品日韩欧美一区二区 | 99久久精品国产一区二区免费 | 国产女人乱人精品三区 | 91麻豆精品国产91久 | 高清av一区二区三区在线观看 | 国产高清女同学巨大 | 国产精品国产三级在线专区 | 2025高清国产一区二区三区 | 丰满多毛少妇做爰视频 | 99国产精品永久免费视频 | 国产成人无码区免费aⅴ片老人 | 精品国产三级国产av中文 | 国产精品无码午夜免费影院 | 国产av无码专区国产乱码 | 91福利国产在线观一区二区 | 国产成人精品在线 | 国产精品亚洲片精品av | 国产在线精品二区 |