读者C#ZXing错误

时间:2015-04-15 17:45:18

标签: c# zxing

我开发了这段代码,我需要帮助来纠正。他没有正确读取第一个条形码数。我需要改变什么?

            //inicia o barcodeReader para ler a StringBuilder e seleciona o tipo de barcode, neste caso, qualquer tipo
            Bitmap image;`


            image = (Bitmap)Bitmap.FromFile(recebe);

            LuminanceSource source;
            source = new BitmapLuminanceSource(image);
            BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
            Result result = new MultiFormatReader().decodeWithState(bitmap);

            //faz um condicional para ler o que existe dentro da matriz Barcode
            foreach (string code in result)
            {

                if (!Directory.Exists(nomePasta.ToString()))
                {
                    Directory.CreateDirectory(nomePasta.ToString());
                }
                else 
                { 

                }

                if (codigo == 0)
                {
                    codigo = Convert.ToInt32(0 + code);

                    File.Move(stringCaminho.ToString(), nomePasta.ToString() + code + ".bmp");
                }

                else if (codigo + 0 > Convert.ToInt32(0 + code))
                {
                    MessageBox.Show("Código de barras está errado! "+code);
                }

                dataGridView1.Rows.Add(code);
                //esta dando erro para fazer o Move da segunda referencia


                }


                }
请帮助我,第一个数字不正确 我从我的电脑上拿了一张图片,他有一个条码,程序读取,移动并重命名为代码的数量。

错误:

  

错误1 foreach语句不能对'ZXing.Result'类型的变量进行操作,因为'ZXing.Result'不包含'GetEnumerator'的公共定义H:\ Projetos \ Qtrack_telas_old - Cópia\ Qtrack_telas \ frmScanner.cs 119 17 Qtrack_telas

1 个答案:

答案 0 :(得分:1)

看起来问题是你正在尝试迭代结果'这不是一个集合(根据我的理解)。

docs for the api显示'结果' class有一个名为' getText'这似乎就是你如何得到结果中数据的字符串表示。

在不知道循环是什么的情况下,我建议您重构代码,以便消除循环或将其放在此方法之外。