public static boolean isRunningFromJar() { boolean result; String home = privateInstance.getHome(); // is the returned path ending with .jar? int lastDot = home.lastIndexOf('.'); if (lastDot > 0 && lastDot < home.length() - 1) { result = home.substring(lastDot).toUpperCase().equals(".JAR"); } else { result = false; } return result; }
private static String getStringFromFileSystem(String resourceIdentifier) { StringBuffer result = new StringBuffer(); try { String tt = privateInstance.getHome(); File in = new File(tt + resourceIdentifier); BufferedReader inputReader = new BufferedReader(new FileReader(in)); String newLine; while ((newLine = inputReader.readLine()) != null) { result.append(newLine); } inputReader.close(); } catch (FileNotFoundException e) { JOptionPane.showMessageDialog(null, e); } catch (IOException e) { JOptionPane.showMessageDialog(null, e); } return result.toString(); }
private static String getStringFromJar(String resourceIdentifier) { StringBuilder result = new StringBuilder(); try { JarFile jar = new JarFile(privateInstance.getHome()); ZipEntry entry = jar.getEntry(resourceIdentifier); BufferedReader inputReader = new BufferedReader(new InputStreamReader(jar.getInputStream(entry))); String newLine; while ((newLine = inputReader.readLine()) != null) { result.append(newLine); } inputReader.close(); } catch (FileNotFoundException e) { JOptionPane.showMessageDialog(null, e); } catch (IOException e) { JOptionPane.showMessageDialog(null, e); } return result.toString(); }
private static void copyFileFromJar(String sourceFileName, File target) { try { JarFile jar = new JarFile(privateInstance.getHome()); ZipEntry entry = jar.getEntry(sourceFileName); InputStream inputStream = new BufferedInputStream(jar.getInputStream(entry)); OutputStream outputStream = new BufferedOutputStream(new FileOutputStream(target)); byte[] buffer = new byte[4096]; for (; ; ) { int nBytes = inputStream.read(buffer); if (nBytes <= 0) break; outputStream.write(buffer, 0, nBytes); } outputStream.flush(); outputStream.close(); inputStream.close(); } catch (FileNotFoundException e) { JOptionPane.showMessageDialog(null, e); } catch (IOException e) { JOptionPane.showMessageDialog(null, e); } }