怎样把Exception的printStackTrace()打印到文件里

 例1:

catch   (Exception   e)  
  {  
      log   (e.getMessage   ());  
  }  
  public   void   log   (String   s)  
  {  
        RandomAccessFile   raf   =   new   RandomAccessFile   ("log.txt",   "rw");  
        raf.seek   (raf.length   ());  
        raf.writeBytes   (s);  
        raf.close   ();  
  }  
  这样不就行了吗?

例2:

private   static   void   writeToFile(Exception   ex)  
  {  
          String   strLogFileName   =   "d://abc//your.log";  
          FileWriter   fwFileWriter   =   null;  
          FileOutputStream   filOut   =   null;  
          try   {  
                  FileWriter   theFile   =   new   FileWriter(strLogFileName,   true);  
                  PrintWriter   out   =   new   PrintWriter(theFile);  
                  try   {  
                          if(!(ex   ==   null))   {  
                                  ex.printStackTrace(out);  
                                  ut.println();  
                          }  
                          out.close();  
                          theFile.close();  
                  }  
                  catch   (Exception   e)   {  
                          e.printStackTrace();  
        System.out.println(e.getMessage());  
                  }  
                  finally   {  
                          if(out   !=   null)   {  
                                  out.close();  
                          }  
                          if(theFile   !=   null)   {  
                                  theFile.close();  
                          }  
                  }  
          }  
          catch(FileNotFoundException   e)   {  
                  e.printStackTrace();  
                  System.out.println(e.getMessage());  
          }  
          catch(Exception   e)   {  
                  e.printStackTrace();  
                  System.out.println(e.getMessage());  
          }  
  }

例3:

public   void   printStackTrace(PrintStream   s)  
  public   void   printStackTrace(PrintWriter   s)  
   
  我的例子:  
  执行:java    
   
  import   java.net.*;  
  import   java.io.*;  
   
          public   class   SimpleURLCheck   {  
   
              public   static   void   main(String   args[])   {  
                  if   (args.length   ==   0)   {  
                      System.err.println  
                          ("Please   provide   a   URL   to   check");  
                  }   else   {  
                  PrintWriter   pw   =   null;  
                      String   urlString   =   args[0];  
                      try   {  
                      pw   =   new   PrintWriter(new   FileOutputStream("out.txt"));  
                          URL   url   =   new   URL(urlString);  
                          URLConnection   connection   =    
                          url.openConnection();  
                          if   (connection   instanceof   HttpURLConnection)   {  
                              HttpURLConnection   httpConnection   =    
                                    (HttpURLConnection)connection;  
                              httpConnection.connect();  
                              int   response   =    
                                    httpConnection.getResponseCode();  
                              System.out.println(  
                                    "Response:   "   +   response);  
                              InputStream   is   =    
                                  httpConnection.getInputStream();  
                              byte[]   buffer   =   new   byte   [256];  
                              while   (is.read   (buffer)   !=   -1)   {}  
                              is.close();  
                          }  
                      }   catch   (IOException   e)   {  
                          e.printStackTrace(pw);  
                          pw.flush();  
                      }  
                  }  
              }  
        }  

 

你可能感兴趣的:(怎样把Exception的printStackTrace()打印到文件里)