gpt4 book ai didi

时间:2019-05-09 标签:c#qr条码读取(unicode)

转载 作者:行者123 更新时间:2023-12-04 16:23:07 24 4
gpt4 key购买 nike

我正在尝试使用 IronBarcode 在 .net 中创建 QR 条码.
我正在关注他们编写二进制数据的教程,但它不适用于阿拉伯文本。它适用于英语,但对于阿拉伯语,控制台输出为“?????”。我尝试过 UTF8、UTF7,但没有任何效果。
https://ironsoftware.com/csharp/barcode/tutorials/csharp-qr-code-generator/#reading-and-writing-binary-data
我的代码是:

using IronBarCode;

var Msg = "مرحبا";

byte[] BinaryData = System.Text.Encoding.UTF8.GetBytes(Msg);
var bitmap = IronBarCode.QRCodeWriter.CreateQrCode(BinaryData,500, IronBarCode.QRCodeWriter.QrErrorCorrectionLevel.Highest).ToBitmap();

var barcodeResult = IronBarCode.BarcodeReader.ReadASingleBarcode(bitmap);
var stringResult = System.Text.Encoding.UTF8.GetString(barcodeResult.BinaryValue);

Console.WriteLine(stringResult) // outputs '?????'
请有人告诉我我缺少什么吗?

最佳答案

var Msg = "هذا لا يعمل";
byte[] BinaryData = System.Text.Encoding.UTF8.GetBytes(Msg);
var bitmap = IronBarCode.QRCodeWriter.CreateQrCode(BinaryData, 500, IronBarCode.QRCodeWriter.QrErrorCorrectionLevel.Highest).ToBitmap();

var barcodeResult = IronBarCode.BarcodeReader.ReadASingleBarcode(bitmap);
var stringResult =
System.Text.Encoding.UTF8.GetString(barcodeResult.BinaryValue);
// stringResult is "هذا لا يعمل"
您看到的问题是 Console.WriteLine 不支持 Visual Studio 中的阿拉伯字符。它打印“?????”对于所有非罗马字符。
您可以通过保存到文件或在 Visual Studio 中放置调试断点并将鼠标悬停在变量上来验证正确的结果。
该视频解释了该问题,并提供了解决方法:
https://m.youtube.com/watch?v=rTqBnJ8HrSc
Console.OutputEncoding = System.Text.Encoding.Unicode;

关于时间:2019-05-09 标签:c#qr条码读取(unicode),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69834623/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com