![]() ![]() |
The following error may occur when passing a byte array directly
into the DataToEncode method that expects a string value when using the Java
Barcode Components:
java.lang.ArrayIndexOutOfBoundsException
The solutions differ depending on the symbology:
PDF417: This is only possible with
IDAutomation PDF417
Java Products V 4.10 dated October, 2004 or later. When using
PDF417, pass the byte array to the binaryCode field of the class
library. Make sure to set the processTilde to false and set PDFMode
to 0.
For example:
PDF417 bc=new PDF417();
bc.processTilde=false;
bc.PDFMode=0;
bc.binaryCode=myByteArray;
Download
a working example of this code here...
Data Matrix: When using Data Matrix barcodes,
use the code example below to convert the byte array (encodedBytes)
into a string that can be encoded in the code field.
Make sure to set the encoding to E_BASE256 and processTilde
to false.
DataMatrix bc = new DataMatrix();
bc.encoding = DataMatrix.E_BASE256;
bc.processTilde=false;
bc.code="";
String binaryString;
for (int i=0; i < encodedBytes.length; i++)
{
binaryString = Integer.toBinaryString((int)encodedBytes[i]);
if (binaryString.length() > 8)
binaryString = binaryString.substring(binaryString.length()-8,binaryString.length());
bc.code = bc.code + (char) Integer.parseInt(binaryString,2);
}
Download a working example of this code here...
©Copyright 2018
IDAutomation.com, All Rights Reserved.
Legal
Notices. Barcode Fonts | Components | Scanners | Support | Contact Us |
|
![]() ![]() ![]() ![]() ![]() Over 70% of Fortune 100 companies use IDAutomation's products to automate their businesses. |