我正在尝试写日志到自定义Log.txt文件上的安卓文件使用我的代码,但这个方法创建了文件,但没有包含任何东西。基本上,我希望读取文件以前的内容,然后将我的数据附加到现有内容。
守则内容如下:
public static void write(String str)
{
InputStream fileInputStream = null;
FileOutputStream fileOutpurStream = null;
try
{
fileInputStream = new FileInputStream(file);
fileOutpurStream = new FileOutputStream(file);
if(file.exists())
{
int ch = 0;
int current = 0;
StringBuffer buffer = new StringBuffer();
while((ch = fileInputStream.read()) != -1)
{
buffer.append((char) ch);
current++;
}
byte data[]=new byte[(int)file.length()];
fileInputStream.read(data);
fileOutpurStream.write(data);
fileOutpurStream.write(str.getBytes(),0,str.getBytes().length);
fileOutpurStream.flush();
}
else
{
file.createNewFile();
fileOutpurStream.write(str.getBytes(),0,str.getBytes().length);
fileOutpurStream.flush();
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
try
{
fileInputStream.close();
fileOutpurStream.flush();
fileOutpurStream.close();
fileOutpurStream = null;
fileInputStream = null;
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
发布于 2011-06-02 10:15:56
希望这能有所帮助..。
public void appendLog(String text)
{
File logFile = new File("sdcard/log.file");
if (!logFile.exists())
{
try
{
logFile.createNewFile();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
try
{
//BufferedWriter for performance, true to set append to file flag
BufferedWriter buf = new BufferedWriter(new FileWriter(logFile, true));
buf.append(text);
buf.newLine();
buf.close();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
发布于 2009-11-20 06:16:49
警告:我可能完全误解了你,但是如果你想要的只是一个日志文件,为什么要担心呢?
将其放入bat文件(将路径更改为您的工具目录,您的path当然就是您的应用程序的名称):
cd "C:\devAndroid\Software\android-sdk-windows-1.6_r1\android-sdk-windows-1.6_r1\tools"
adb logcat -v time ActivityManager:W yourappname:D *:W >"C:\devAndroid\log\yourappname.log"
然后在你的代码中做一些类似这样的事情:
Log.d("yourappname", "Your message");
要创建日志,请连接USB电缆并运行bat文件。
问候
发布于 2010-05-20 19:03:21
你应该看看microlog4android。他们有一个可以记录到文件中的解决方案。
https://stackoverflow.com/questions/1756296
复制相似问题