docs: public static void createFile(final File dest, final InputStream sourceInput) throws IOException {
          if (sourceInput == null || dest == null)
              return;
  
          FileOutputStream fos = null;
          try {
              if (!dest.getParentFile().exists()) {
                  if (!dest.getParentFile().mkdirs()) {
                      throw new FileNotFoundException();
                  }
              }
              fos = TextFileOutputStreamFactory.createOutputStream(dest);
              byte[] buffer = new byte[DEFAULT_BUFFER_SIZE];
  
              int count = -1;
              while ((count = sourceInput.read(buffer)) > 0) {
                  fos.write(buffer, 0, count);
              }
              fos.flush();
          } finally {
              Utils.tryToClose(fos);
              Utils.tryToClose(sourceInput);
          }
  
      }