/** * * TXT2QRCode * * @version 1.1.1 vom 27.12.2014 * @author Daniel Ruf */ import java.io.IOException; import java.io.File; import java.io.FileFilter; import java.io.BufferedReader; import java.io.FileReader; import com.google.zxing.BarcodeFormat; import com.google.zxing.WriterException; import com.google.zxing.client.j2se.MatrixToImageWriter; import com.google.zxing.client.j2se.MatrixToSvgImageWriter; import com.google.zxing.common.BitMatrix; import com.google.zxing.qrcode.QRCodeWriter; import com.google.zxing.FormatException; public class txt2qrcode { public static void main(String[] args) throws Exception{ String path2 = "."; File directory = new File(path2); File[] myarray; String version = "1.1.1"; String program = "TXT2QRCode"; System.out.println(program + " " + version ); myarray=directory.listFiles(new FileFilter() { public boolean accept(File dir) { return dir.toString().endsWith(".txt") && dir.isFile(); } }); System.out.println("Found " + myarray.length + " file(s)"); for (int j = 0; j < myarray.length; j++) { int file_number = j+1; System.out.print("\rProcessing file " + file_number + " of " + myarray.length); File path=myarray[j]; String path_current = path.toString(); String content = readLines(path_current); int index = path.getName().lastIndexOf('.'); String filename = path.getName().substring(0, index); QRCodeWriter writer = new QRCodeWriter(); BitMatrix bitMatrix = null; try { bitMatrix = writer.encode(content, BarcodeFormat.QR_CODE, 300, 300); MatrixToImageWriter.writeToFile(bitMatrix, "PNG", new File(filename+".png")); MatrixToSvgImageWriter.writeToFile(bitMatrix, new File(filename + ".svg"), true); } catch (WriterException e){ e.printStackTrace(); } catch (IOException e){ e.printStackTrace(); } } System.out.println(""); System.out.println("Done"); } public static String readLines(String aFile) throws IOException { StringBuilder contents = new StringBuilder(); try { BufferedReader input = new BufferedReader(new FileReader(aFile)); try { String line = null; while (( line = input.readLine()) != null){contents.append(line); contents.append("\n");} } finally {input.close();} } catch (IOException ex){ ex.printStackTrace(); } return contents.toString(); } }