private void OpenActionPerformed(java.awt.event.ActionEvent evt) {
IniFile iniFile = new IniFile("config.ini");
String startdir = iniFile.getProperty("Directories", "Select");
if (startdir=="")
{
startdir=System.getProperty("user.dir");
}
startdir=startdir + "/.";
FileChooser.setCurrentDirectory(new File(startdir));
int returnVal = FileChooser.showOpenDialog(this);
if (returnVal == FileChooser.APPROVE_OPTION) {
File file [] = FileChooser.getSelectedFiles();
URLPoster u = new URLPoster ();
u.setbaseurl(urlbase);
String fname;
String dirname = "";
jProgressBar1.setMinimum(0);
jProgressBar1.setMaximum(file.length);
jProgressBar1.setStringPainted(true);
for (int iz = 0; iz < file.length; iz++) {
try {
jProgressBar1.setValue(iz);
jProgressBar1.repaint();
jPanel1.repaint();
jPanel1.revalidate();
// synchronized (this) {
Thread.sleep(100L);
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
fname = file [iz].getAbsolutePath();
ltext.append ("file "+ fname + "\n");
Long l = file [iz].lastModified();
Date date=new Date(l);
SimpleDateFormat df2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateText = df2.format(date);
String getJSON = u.postdata("g_checkfile.php","f='" + fname + "'&date=" + dateText);
dirname=file [iz].getPath();
ltext.append (getJSON + "\n");
ltext.setCaretPosition(ltext.getDocument().getLength());
ltext.update(ltext.getGraphics());
Object obj = JSONValue.parse(getJSON);
JSONArray jarray = (JSONArray)obj;
if (jarray==null) { continue; }
String no = jarray.get(1).toString();
String isda = jarray.get(0).toString();
Boolean doit;
doit = true;
if (isda.length() > 3) { doit = false; }
System.out.println (fname);
System.out.println (getJSON + " no=" + no + " exists=" + isda + " " + isda.length() + " => " + doit);
String strout = "[";
Integer schleife;
if (doit == true)
{
try
{
Path filePath = Path.of(fname);
String cc = Files.readString(filePath);
if (cc.contains("="))
{
cc=cc.replace("=C3=84", "Ä");
cc=cc.replace("=C3=96", "Ö");
cc=cc.replace("=C3=9C", "Ü");
cc=cc.replace("=C3=A4", "ä");
cc=cc.replace("=C3=B6", "ö");
cc=cc.replace("=C3=BC", "ü");
cc=cc.replace("=C3=9F", "ß");
}
NGram ngram = new NGram();
List<String> ngrams = ngram.generateNGrams (cc,4);
schleife=0;
System.out.println("ngrams=" + ngrams.size());
jProgressBar2.setMinimum(0);
jProgressBar2.setMaximum(ngrams.size());
jProgressBar2.setStringPainted(true);
for (int i=0; i<ngrams.size()-1; i++)
{
try {
jProgressBar2.setValue(i);
jProgressBar1.repaint();
Thread.sleep(10);
} catch (InterruptedException ignoredException) {}
String s = ngrams.get(i);
if (strout.length()>1) { strout=strout + ","; }
strout = strout + '"' + s + '"';
// schleife++;
if (schleife==maxschleife)
{
gibaus (strout,u,dateText);
strout = "[";
System.out.println("i=" + i);
jLabel1.setText("i=" + i);
jLabel1.update(jLabel1.getGraphics());
schleife=0;
}
final String txt1 = "i=" + i;
SwingUtilities.invokeLater(() -> jLabel1.setText(txt1));
schleife++;
if (i >= maxngrams) {break;}
}
gibaus (strout,u,dateText);
final String txt = " ";
SwingUtilities.invokeLater(() -> jLabel1.setText(txt));
final String txt1 = "Ferig";
SwingUtilities.invokeLater(() -> jLabel1.setText(txt1));
}
catch (Exception e)
{
System.out.println (e.getMessage());
}
}
}
iniFile.setProperty("Directories", "Select",dirname);
iniFile.save();
jProgressBar1.setValue(file.length);
jProgressBar1.repaint();
} else {
System.out.println("File access cancelled by user.");
}
JOptionPane.showConfirmDialog(null, "Fertig!", "Schau schau ...",
JOptionPane.OK_OPTION, JOptionPane.INFORMATION_MESSAGE);
}