2010-01-30 27 views
1

如何将某个文件转换为字符串?然后从该字符串获取原始文件?这需要使用Java来实现它。Java Applet - 将文件转换为字符串

这将是代码示例或教程链接。

必须转换字符串中的整个文件(不是内容)然后将字符串转换为文件。

谢谢。

+0

你为什么用'applet'标记这个问题。在大多数情况下,您无法从Applet读取或写入文件。 – Pierre 2010-01-30 17:34:08

+0

因为我需要这个applet应用程序。 – Emanuel 2010-01-30 17:42:21

+0

hm,你需要转换一个文件名 - (到/从)文件或文件_contents_(到/从)文件 – Bozho 2010-01-30 17:46:35

回答

3

注意:在以下两种情况下,您都必须数字签名您的小程序,以便它被授予从文件系统读取/写入文件系统的权限!

如果你可以使用外部库,使用Apache commons-io(你将不得不签署这些罐子以及)

FileUtils.readFileToString(..)

FileUtils.writeStringToFile(..)

如果你不能,你可以看到this tutorial

这是为文本文件 - 但如果你想读二进制文件(例如.png),你应该而不是阅读它作为字符串。相反,它读作byte[]和使用commons-codec -

编码:String base64String = new String(Base64.encodeBase64(byteArray));

解码:byte[] originalBytes = Base64.decodeBase64(string.getByte());

Base64是用于存储二进制数据字符串格式。

+0

+1提到小程序必须签名访问文件系统 – stacker 2010-01-30 18:11:49

0
public static String getFileContent(File file) throws IOException 
{ 
FileReader in=new FileReader(file); 
StringWriter w= new StringWriter(); 
char buffer[]=new char[2048]; 
int n=0; 
while((n=in.read(buffer))!=-1) 
{ 
w.write(buffer, 0, n); 
} 
w.flush(); 
in.close(); 
return w.toString(); 
} 

public static void toFileContent(String s,File file) throws IOException 
{ 
FileWriter f=new FileWriter(file); 
f.write(s); 
f.flush(); 
f.close(); 
} 
+0

您的示例是否适用于.rar,.jpg,...文件? – Emanuel 2010-01-30 17:58:26