• 大小: 6.38MB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-02-03
  • 语言: C#
  • 标签: 二维码  

资源简介

QRCode二维码维码支持中文,网上流传很多版本都说支持中文二维码。看过测试都有问题,自己看了源码改了下。 原版本 中有 IsUnicode 方法判断是否为Unicode编码 但这个方法好像有问题 所以无法准确判断中文。可以通过改写这个来实现中文。 另外有两个方法 都可以解决中文问题 public virtual String decode(QRCodeImage qrCodeImage, Encoding encoding) public virtual String decode(QRCodeImage qrCodeImage) 因为是虚方法可以重写这个方法就可以 所以 可以通过 改写IsUnicode 和 重写 这个两个虚方法来实现 /// /// 用于判断中文 /// /// /// public static bool IsUnicode(byte[] byteData) { // This is by Joson Jiang 用于判断中文 //因为ascii编码当中的最大为127,这样判断后, //就能正确的判断是不是unicode,这样就能正确的解码中文了. bool isUnicode = false; try { foreach (byte value in byteData) { if (value > 128) { isUnicode = true; break; } } } catch (Exception) { //其中的是原本的代码 无法正确判断 中文 string value1 = FromASCIIByteArray(byteData); string value2 = FromUnicodeByteArray(byteData); byte[] ascii = AsciiStringToByteArray(value1); byte[] unicode = UnicodeStringToByteArray(value2); if (ascii[0] != unicode[0]) return true; return false; } return isUnicode;//返回是不是Unicode编码 } /// /// 重写直接返回 解决中文问题 /// public class QRCodeDecoders : QRCodeDecoder { QRCodeDecoder decoder = new QRCodeDecoder(); public override String decode(QRCodeImage qrCodeImage) { sbyte[] data = decoder.decodeBytes(qrCodeImage); byte[] byteData = new byte[data.Length]; Buffer.BlockCopy(data, 0, byteData, 0, byteData.Length); String decodedData; return decodedData =

资源截图

代码片段和文件信息

using System.Reflection;
using System.Runtime.CompilerServices;

// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.

// TODO: Review the values of the assembly attributes

[assembly: Assemblytitle(“ThoughtWorks.QRCode.NET Component“)]
[assembly: AssemblyDescription(“A library for QRCode encoding and decoding“)]
[assembly: AssemblyCompany(““)]
[assembly: AssemblyProduct(““)]
[assembly: AssemblyCopyright(““)]
[assembly: AssemblyTrademark(““)]
[assembly: AssemblyCulture(““)]


// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version
//      Revision
//      Build Number
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the ‘*‘ as shown below:

[assembly: AssemblyVersion(“1.0.*“)]

//
// In order to sign your assembly you must specify a key to use. Refer to the 
// Microsoft .NET framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing. 
//
// Notes: 
//   (*) If no key is specified the assembly is not signed.
//   (*) KeyName refers to a key that has been installed in the Crypto Service
//       Provider (CSP) on your machine. KeyFile refers to a file which contains
//       a key.
//   (*) If the KeyFile and the KeyName values are both specified the 
//       following processing occurs:
//       (1) If the KeyName can be found in the CSP that key is used.
//       (2) If the KeyName does not exist and the KeyFile does exist the key 
//           in the KeyFile is installed into the CSP and used.
//   (*) In order to create a KeyFile you can use the sn.exe (Strong Name) utility.
//       When specifying the KeyFile the location of the KeyFile should be
//       relative to the project output directory which is
//       %Project Directory%\obj\. For example if your KeyFile is
//       located in the project directory you would specify the AssemblyKeyFile 
//       attribute as [assembly: AssemblyKeyFile(“..\..\mykey.snk“)]
//   (*) Delay Signing is an advanced option - see the Microsoft .NET framework
//       documentation for more information on this.
//

[assembly: AssemblyConfiguration(““)]
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile(““)]
[assembly: AssemblyKeyName(““)]



 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3348  2013-01-13 15:38  _UpgradeReport_Files\UpgradeReport.css

     文件      12505  2010-05-04 01:19  _UpgradeReport_Files\UpgradeReport.xslt

     文件         69  2013-01-13 15:38  _UpgradeReport_Files\UpgradeReport_Minus.gif

     文件         71  2013-01-13 15:38  _UpgradeReport_Files\UpgradeReport_Plus.gif

     文件       2549  2007-06-08 13:38  Backup\QRCodeLib\AssemblyInfo.cs

     文件        882  2007-06-30 23:24  Backup\QRCodeLib\data\QRCodeBitmapImage.cs

     文件        262  2007-06-30 23:21  Backup\QRCodeLib\data\QRCodeImage.cs

     文件      14203  2007-07-30 10:43  Backup\QRCodeLib\data\QRCodeSymbol.cs

     文件       4993  2007-07-30 10:43  Backup\QRCodeLib\ecc\BCH15_5.cs

     文件       9927  2007-07-30 10:43  Backup\QRCodeLib\ecc\ReedSolomon.cs

     文件        399  2007-07-04 22:38  Backup\QRCodeLib\exception\AlignmentPatternNotFoundException.cs

     文件        690  2007-07-04 22:38  Backup\QRCodeLib\exception\DecodingFailedException.cs

     文件        383  2007-07-04 22:38  Backup\QRCodeLib\exception\FinderPatternNotFoundException.cs

     文件        385  2007-07-04 22:38  Backup\QRCodeLib\exception\InvalidDataBlockException.cs

     文件        375  2007-07-04 22:38  Backup\QRCodeLib\exception\InvalidVersionException.cs

     文件        390  2007-07-04 22:38  Backup\QRCodeLib\exception\InvalidVersionInfoException.cs

     文件        381  2007-07-04 22:38  Backup\QRCodeLib\exception\SymbolNotFoundException.cs

     文件        160  2007-07-04 22:38  Backup\QRCodeLib\exception\VersionInformationException.cs

     文件       1935  2007-06-08 13:38  Backup\QRCodeLib\geom\Axis.cs

     文件       3357  2007-06-08 13:38  Backup\QRCodeLib\geom\Line.cs

     文件       1507  2007-06-08 13:38  Backup\QRCodeLib\geom\Point.cs

     文件       4228  2007-06-08 13:38  Backup\QRCodeLib\geom\SamplingGrid.cs

     文件      54356  2007-08-04 21:35  Backup\QRCodeLib\Properties\Resources.Designer.cs

     文件      58871  2007-08-04 21:32  Backup\QRCodeLib\Properties\Resources.resx

     文件      15507  2007-08-01 15:57  Backup\QRCodeLib\QRCodeDecoder.cs

     文件      29736  2007-08-01 21:09  Backup\QRCodeLib\QRCodeEncoder.cs

     文件      16634  2007-08-04 21:32  Backup\QRCodeLib\QRCodeLib.csproj

     文件       8739  2007-07-30 10:43  Backup\QRCodeLib\reader\pattern\AlignmentPattern.cs

     文件      21060  2007-07-30 10:43  Backup\QRCodeLib\reader\pattern\FinderPattern.cs

     文件       2550  2007-06-08 13:38  Backup\QRCodeLib\reader\pattern\LogicalSeed.cs

............此处省略754个文件信息

评论

共有 条评论