Advertisement
Pytypaldy

Parser - Tahanovce

Dec 18th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.92 KB | None | 0 0
  1. package core;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.BufferedWriter;
  5. import java.io.File;
  6. import java.io.FileReader;
  7. import java.io.FileWriter;
  8. import java.io.IOException;
  9.  
  10. public class ParserTahanovce {
  11.  
  12.     public static String removeTags(String line) {
  13.         line = line.trim();
  14.         line = line.replaceAll("\\<.*?\\>", "");
  15.         return line;
  16.     }
  17.  
  18.     public static String[] zmluvnaStranaParser(String line) {
  19.         line = line.replace("Odberateľ:", "");
  20.         line = line.replace("Dodávateľ:", ",");
  21.         String[] parts = line.split(",");
  22.         for (int i = 0; i < parts.length; i++) {
  23.             parts[i] = parts[i].trim();
  24.         }
  25.         return parts;
  26.     }
  27.  
  28.     public static String createHeader() {
  29.         StringBuffer head = new StringBuffer();
  30.         head.append("CREATE TABLE IF NOT EXISTS fakturyTahanovce (");
  31.         head.append("id int,");
  32.         head.append("typ_dokumentu varchar(255),");
  33.         head.append("predmet varchar(255),");
  34.         head.append("datum_zverejnenia varchar(255),");
  35.         head.append("datum_vystavenia varchar(255),");
  36.         head.append("datum_prijatia varchar(255),");
  37.         head.append("obchodne_meno varchar(255),");
  38.         head.append("ico varchar(255),");
  39.         head.append("adresa varchar(255),");
  40.         head.append("suma varchar(255),");
  41.         head.append("vratane_dph varchar(255)");
  42.         head.append(");");
  43.         head.append('\n');
  44.        
  45.         head.append("INSERT INTO fakturyTahanovce (id, typ_dokumentu, predmet, datum_zverejnenia, datum_vystavenia, datum_prijatia, ");
  46.         head.append("obchodne_meno, ico, adresa, suma, vratane_dph)");
  47.         head.append('\n');
  48.         head.append("VALUES");
  49.         return head.toString();
  50.     }
  51.  
  52.     public static void appendLine(String line) {
  53.         BufferedWriter bw = null;
  54.         FileWriter fw = null;
  55.  
  56.         try {
  57.             File file = new File("tahanovce.sql");
  58.             if (!file.exists()) {
  59.                 file.createNewFile();
  60.             }
  61.             fw = new FileWriter(file.getAbsoluteFile(), true);
  62.             bw = new BufferedWriter(fw);
  63.  
  64.             bw.write(line);
  65.             bw.write('\n');
  66.         } catch (IOException e) {
  67.             e.printStackTrace();
  68.         } finally {
  69.             try {
  70.                 if (bw != null)
  71.                     bw.close();
  72.  
  73.                 if (fw != null)
  74.                     fw.close();
  75.             } catch (IOException ex) {
  76.                 ex.printStackTrace();
  77.             }
  78.         }
  79.     }
  80.  
  81.     public static void read(String name, Integer id) {
  82.         try (BufferedReader br = new BufferedReader(new FileReader(name))) {
  83.             Integer write = 0;
  84.             StringBuffer lineOut = new StringBuffer();
  85.             lineOut.append("(");
  86.             String previousLine = "";
  87.             String currentLine;
  88.  
  89.             lineOut.append("'");
  90.             lineOut.append(String.valueOf(id));
  91.             lineOut.append("',");
  92.  
  93.             while ((currentLine = br.readLine()) != null) {
  94.  
  95.                 if (previousLine.contains("<td class=\"label\">Typ dokumentu: </td>")) {
  96.                     String line = removeTags(currentLine);
  97.                     lineOut.append("'");
  98.                     lineOut.append(line);
  99.                     lineOut.append("',");
  100.                     if (!removeTags(line).equals(""))
  101.                         write++;
  102.                 }
  103.                 if (previousLine.contains("<td class=\"label\">Predmet: </td>")) {
  104.                     String line = removeTags(currentLine);
  105.                     lineOut.append("'");
  106.                     lineOut.append(line);
  107.                     lineOut.append("',");
  108.                     if (!removeTags(line).equals(""))
  109.                         write++;
  110.                 }
  111.                 if (previousLine.contains("<td class=\"label\">Dátum zverejnenia: </td>")) {
  112.                     String line = removeTags(currentLine);
  113.                     lineOut.append("'");
  114.                     lineOut.append(line);
  115.                     lineOut.append("',");
  116.                     if (!removeTags(line).equals(""))
  117.                         write++;
  118.                 }
  119.                 if (previousLine.contains("<td class=\"label\">Dátum vystavenia: </td>")) {
  120.                     String line = removeTags(currentLine);
  121.                     lineOut.append("'");
  122.                     lineOut.append(line);
  123.                     lineOut.append("',");
  124.                     if (!removeTags(line).equals(""))
  125.                         write++;
  126.                 }
  127.                 if (previousLine.contains("<td class=\"label\">Dátum prijatia: </td>")) {
  128.                     String line = removeTags(currentLine);
  129.                     lineOut.append("'");
  130.                     lineOut.append(line);
  131.                     lineOut.append("',");
  132.                     if (!removeTags(line).equals(""))
  133.                         write++;
  134.                 }
  135.                 if (previousLine.contains("<td class=\"label\">Objednávku podpísal: </td>")) {
  136.                     String line = removeTags(currentLine);
  137.                     lineOut.append("'");
  138.                     lineOut.append(line);
  139.                     lineOut.append("',");
  140.                     if (!removeTags(line).equals(""))
  141.                         write++;
  142.                 }
  143.                 if (previousLine.contains("<td class=\"label\">Obchodné meno: </td>")) {
  144.                     String line = removeTags(currentLine);
  145.                     lineOut.append("'");
  146.                     lineOut.append(line);
  147.                     lineOut.append("',");
  148.                     if (!removeTags(line).equals(""))
  149.                         write++;
  150.                 }
  151.                 if (previousLine.contains("<td class=\"label\">IČO: </td>")) {
  152.                     String line = removeTags(currentLine);
  153.                     lineOut.append("'");
  154.                     lineOut.append(line);
  155.                     lineOut.append("',");
  156.                     if (!removeTags(line).equals(""))
  157.                         write++;
  158.                 }
  159.                 if (previousLine.contains("<td class=\"label\">Adresa: </td>")) {
  160.                     String line = removeTags(currentLine);
  161.                     lineOut.append("'");
  162.                     lineOut.append(line);
  163.                     lineOut.append("',");
  164.                     if (!removeTags(line).equals(""))
  165.                         write++;
  166.                 }
  167.                 if (previousLine.contains("<td class=\"label\">Suma: </td>")) {
  168.                     String line = removeTags(currentLine);
  169.                     lineOut.append("'");
  170.                     lineOut.append(line);
  171.                     lineOut.append("',");
  172.                     if (!removeTags(line).equals(""))
  173.                         write++;
  174.                 }
  175.                 if (previousLine.contains("<td class=\"label\">Vrátane DPH: </td>")) {
  176.                     String line = removeTags(currentLine);
  177.                     lineOut.append("'");
  178.                     lineOut.append(line);
  179.                     lineOut.append("'");
  180.                     if (!removeTags(line).equals(""))
  181.                         write++;
  182.                 }
  183.                 previousLine = currentLine;
  184.             }
  185.             lineOut.append("),");
  186.             System.out.println(write);
  187.             if (write == 10)
  188.             appendLine(lineOut.toString());
  189.             System.out.println(lineOut.toString());
  190.         } catch (IOException e) {
  191.             e.printStackTrace();
  192.         }
  193.     }
  194.  
  195.     public static void readAll() {
  196.         for (int i = 2418; i > 0; i--) {
  197.             read("Tahanovce/" + String.valueOf(i) + ".html", i);
  198.             System.out.println(i);
  199.         }
  200.     }
  201.  
  202.     public static void main(String[] args) {
  203.         appendLine(createHeader());
  204.         readAll();
  205.  
  206.     }
  207.  
  208. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement