String result=new String(codeDecoder.decode(new MyQRCodeImage(bufferedImage)),"gb2312");
这段报错
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
at jp.sourceforge.qrcode.pattern.FinderPattern.getWidth(FinderPattern.java:525)
at jp.sourceforge.qrcode.pattern.FinderPattern.findFinderPattern(FinderPattern.java:49)
at jp.sourceforge.qrcode.reader.QRCodeImageReader.getQRCodeSymbol(QRCodeImageReader.java:172)
at jp.sourceforge.qrcode.QRCodeDecoder.decode(QRCodeDecoder.java:141)
at jp.sourceforge.qrcode.QRCodeDecoder.decode(QRCodeDecoder.java:70)
at com.imooc.qrcode.ReadQRCode.main(ReadQRCode.java:19)
是为什么啊?照着视频类敲的啊?
是偏移量没加报错。加了偏移量就好了。
应该是二维码生成时的循环,没有加偏移量(视频中老师没有操作),导致解析时数组下标越界,图片中红线处,复制过来的源码是没有加的
这个语句之前的代码段,你截图说着复制粘贴上来看看