From 83b55b7801cbf1c37971eb530ddf9b0f46a11536 Mon Sep 17 00:00:00 2001 From: Kensuke Matsuzaki <zakki@peppermint.jp> Date: Sun, 25 Mar 2012 17:25:04 -0400 Subject: [PATCH] Add Japanese massages --- src/com/gitblit/utils/FileUtils.java | 48 +++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 47 insertions(+), 1 deletions(-) diff --git a/src/com/gitblit/utils/FileUtils.java b/src/com/gitblit/utils/FileUtils.java index 6644d83..29c9d0f 100644 --- a/src/com/gitblit/utils/FileUtils.java +++ b/src/com/gitblit/utils/FileUtils.java @@ -15,11 +15,14 @@ */ package com.gitblit.utils; +import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; +import java.io.FileNotFoundException; import java.io.FileOutputStream; +import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.nio.charset.Charset; @@ -69,7 +72,7 @@ public static void writeContent(File file, String content) { try { OutputStreamWriter os = new OutputStreamWriter(new FileOutputStream(file), - Charset.forName("UTF-8")); + Charset.forName("UTF-8")); BufferedWriter writer = new BufferedWriter(os); writer.append(content); writer.close(); @@ -103,4 +106,47 @@ } return length; } + + /** + * Copies a file or folder (recursively) to a destination folder. + * + * @param destinationFolder + * @param filesOrFolders + * @return + * @throws FileNotFoundException + * @throws IOException + */ + public static void copy(File destinationFolder, File... filesOrFolders) + throws FileNotFoundException, IOException { + destinationFolder.mkdirs(); + for (File file : filesOrFolders) { + if (file.isDirectory()) { + copy(new File(destinationFolder, file.getName()), file.listFiles()); + } else { + File dFile = new File(destinationFolder, file.getName()); + BufferedInputStream bufin = null; + FileOutputStream fos = null; + try { + bufin = new BufferedInputStream(new FileInputStream(file)); + fos = new FileOutputStream(dFile); + int len = 8196; + byte[] buff = new byte[len]; + int n = 0; + while ((n = bufin.read(buff, 0, len)) != -1) { + fos.write(buff, 0, n); + } + } finally { + try { + bufin.close(); + } catch (Throwable t) { + } + try { + fos.close(); + } catch (Throwable t) { + } + } + dFile.setLastModified(file.lastModified()); + } + } + } } -- Gitblit v1.9.1