|
SSISO Community검색 |
|
SSISO Community메뉴 |
|
SSISO Community카페 |
|
블로그 카테고리 |
|
|
Synchronized로 검색한 결과 |
|
등록일:2008-03-10 16:45:08 작성자: 제목:파일카피 메소드 |
|
/*
*
* File를 copy하자...
*/
public static void copyFile(String source, String dest, boolean bRemoveSource) throws IOException
{
FileInputStream fileInput = null;
FileOutputStream fileOutput = null;
boolean bCanWrite = false;
boolean bDeleted = false;
File fileSource = new File(source);
File fileDest = new File(dest);
long time = fileSource.lastModified();
try
{
fileInput = new FileInputStream(source);
fileOutput = new FileOutputStream(dest);
copyStream(fileInput, fileOutput);
}
finally
{
try
{
if (fileInput != null) fileInput.close();
}
catch (IOException e) {}
try
{
if (fileOutput != null)
fileOutput.close();
}
catch (IOException e) {}
}
fileInput.close();
fileOutput.close();
fileDest.setLastModified(time);
if (bRemoveSource == true)
{
bCanWrite = fileSource.canWrite();
if (bCanWrite)
{
bDeleted = fileSource.delete();
}
}
}
public static void copyStream(InputStream in, OutputStream out) throws IOException
{
Synchronized (in)
{
Synchronized (out)
{
byte[] buffer = new byte[1024];
while (true)
{
int bytesRead = in.read(buffer);
if (bytesRead == -1)
break;
out.write(buffer, 0, bytesRead);
}
}
}
} |
|
|
|
|
|