一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - C# - C#二維碼圖片識別代碼

C#二維碼圖片識別代碼

2022-02-24 13:48志在必得Shaun C#

這篇文章主要為大家詳細介紹了C#二維碼圖片識別代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了C#二維碼圖片識別的具體代碼,供大家參考,具體內容如下

怎么用NuGet和怎么配置log4net就不介紹了,直接上代碼(Visual Studio 2015 下的項目,用的.NET Framework 4.5.2)。

其中QRDecodeConsoleApp.exe.config文件里配置圖片路勁(默認為D:\我的文檔\Pictures\二維碼)、圖片類型(默認為*.png)。

也支持在命令行里執行,exe后接圖片路勁參數。

需要直接用的朋友,確認完QRDecodeDemo\bin\Debug下的配置文件QRDecodeConsoleApp.exe.config后,運行QRDecodeConsoleApp.exe即可(運行環境上文已附鏈接)。

后續更新一個批量生成二維碼圖片的工具,網上除了在線生成的,下載下來的工具都不怎么好用。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
using System;
using System.IO;
using System.Drawing;
using System.Configuration;
using ThoughtWorks.QRCode.Codec;
using ThoughtWorks.QRCode.Codec.Data;
using log4net;
 
namespace QRDecodeConsoleApp
{
 class Program
 {
 /// <summary>
 /// 私有日志對象
 /// </summary>
 private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
 
 /// <summary>
 /// 識別指定目錄下的全部二維碼圖片(默認是PNG)
 /// </summary>
 /// <param name="args"></param>
 static void Main(string[] args)
 {
  try
  {
  string[] files;
  if (args.Length > 0)
  {
   //args[0]為CMD里exe后的第一個參數 ImgType默認配置的*.png
   files = Directory.GetFiles(args[0], ConfigurationManager.AppSettings["ImgType"]);
  }
  else
  {
   //讀取指定路勁(QRDecodeConsoleApp.exe.config里配置的路勁)
   files = Directory.GetFiles(ConfigurationManager.AppSettings["QRImgPath"],
      ConfigurationManager.AppSettings["ImgType"]);
  }
 
  //存放結果的文件
  string filePath = "txtResult" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".config";
 
  //一個個讀取并追加到記錄文件
  for (int i = 0; i < files.Length; i++)
  {
   File.AppendAllText(filePath, CodeDecoder(files[i]) + "\t" + files[i] + "\n");//追加到文件里記錄
   logger.Info("第" + i + "個識別成功");
   Console.WriteLine("第" + i + "個識別成功");
  }
  Console.WriteLine("識別完成,按任意鍵退出");
  Console.ReadLine();
  }
  catch (Exception ex)
  {
  Console.WriteLine("識別出錯:" + ex.Message);
  logger.Error("識別出錯");
  logger.Error("異常描述:\t" + ex.Message);
  logger.Error("異常方法:\t" + ex.TargetSite);
  logger.Error("異常堆棧:\t" + ex.StackTrace);
  Console.ReadLine();
  }
 
 }
 
 /// <summary>
 /// 讀取圖片文件,識別二維碼
 /// </summary>
 /// <param name="filePath">圖片文件路勁</param>
 /// <returns>識別結果字符串</returns>
 public static string CodeDecoder(string filePath)
 {
  string decoderStr;
  try
  {
  if (!System.IO.File.Exists(filePath))//判斷有沒有需要讀取的主文件夾,如果不存在,終止
   return null;
 
  Bitmap bitMap = new Bitmap(Image.FromFile(filePath));//實例化位圖對象,把文件實例化為帶有顏色信息的位圖對象
  QRCodeDecoder decoder = new QRCodeDecoder();//實例化QRCodeDecoder
 
  //通過.decoder方法把顏色信息轉換成字符串信息
  decoderStr = decoder.decode(new QRCodeBitmapImage(bitMap), System.Text.Encoding.UTF8);
  }
  catch (Exception ex)
  {
  throw ex;
  }
 
  return decoderStr;//返回字符串信息
 }
 
 
 }
}

代碼鏈接:(QRDecodeDemo.zip)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/xuezhizhang/p/8968515.html

延伸 · 閱讀

精彩推薦
  • C#C#實現XML文件讀取

    C#實現XML文件讀取

    這篇文章主要為大家詳細介紹了C#實現XML文件讀取的相關代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    Just_for_Myself6702022-02-22
  • C#C#裁剪,縮放,清晰度,水印處理操作示例

    C#裁剪,縮放,清晰度,水印處理操作示例

    這篇文章主要為大家詳細介紹了C#裁剪,縮放,清晰度,水印處理操作示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    吳 劍8332021-12-08
  • C#C#通過KD樹進行距離最近點的查找

    C#通過KD樹進行距離最近點的查找

    這篇文章主要為大家詳細介紹了C#通過KD樹進行距離最近點的查找,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    帆帆帆6112022-01-22
  • C#C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    這篇文章主要介紹了C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題,簡單描述了訪問者模式的定義并結合具體實例形式分析了C#使用訪問者模式解決長...

    GhostRider9502022-01-21
  • C#Unity3D實現虛擬按鈕控制人物移動效果

    Unity3D實現虛擬按鈕控制人物移動效果

    這篇文章主要為大家詳細介紹了Unity3D實現虛擬按鈕控制人物移動效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一...

    shenqingyu060520232410972022-03-11
  • C#WPF 自定義雷達圖開發實例教程

    WPF 自定義雷達圖開發實例教程

    這篇文章主要介紹了WPF 自定義雷達圖開發實例教程,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下...

    WinterFish13112021-12-06
  • C#C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    這篇文章主要介紹了C# 實現對PPT文檔加密、解密及重置密碼的操作方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下...

    E-iceblue5012022-02-12
  • C#深入解析C#中的交錯數組與隱式類型的數組

    深入解析C#中的交錯數組與隱式類型的數組

    這篇文章主要介紹了深入解析C#中的交錯數組與隱式類型的數組,隱式類型的數組通常與匿名類型以及對象初始值設定項和集合初始值設定項一起使用,需要的...

    C#教程網6172021-11-09
主站蜘蛛池模板: 国产一区二区三区在线观看视频 | 九九影院午夜理论片无码 | 国产精品99在线观看 | 久久亚洲电影www电影网 | 69av免费视频 | 黄在线观看www免费看 | 四虎永久免费在线观看 | 高清在线观看mv的网址免费 | 国产梦呦精品 | 国产精品成 | 精精国产xxxx视频在线播放器 | 男人躁女人过程 | 国产老村长足疗店对白 | ass韩国美女人体pics | 国产成人在线视频播放 | 国产日韩免费视频 | 视频一区久久 | 午夜欧美精品久久久久久久 | 成品人视频w免费观看w | 日本黄大片影院一区二区 | 3d动漫美女物被遭强视频 | 窝窝午夜理伦影院 | 成人黄色a级片 | 91久久国产露脸精品 | 非洲黑人女bbwxxxx | 疯狂伦交1一6小说 | 免费网站看v片在线香蕉 | 日本亚欧乱色视频在线观看 | 四虎网址在线 | 国产久草在线 | 日韩毛片免费在线观看 | 无耻之徒第十一季在线观看 | 色亚| 亚洲一级特黄 | 精灵之森高清在线 | 朝鲜女人free性hu | 精品久久久久久亚洲 | 瘦老汉gay | 九九精品视频一区二区三区 | 韩国女主播在线大尺无遮挡 | 91久操|