本帖最后由 java2000_net 于 2008-08-04 20:51:08 编辑

解决方案 »

  1.   

    如果已经得到了数据,那往txt里写入,用流还不行么。。
      

  2.   

    楼上的zhangkai08111  ,可否详细点??
      

  3.   

    import java.io.BufferedWriter; 
    import java.io.File; 
    import java.io.FileWriter; 
    import java.io.IOException; 
    import java.io.PrintWriter; 
    File dirFile = new File("c:\\aaaa"); 
            if(!dirFile.exists()){ 
                dirFile.mkdirs(); 
            } 
            //查找文件,如果不存在,就创建 
            File file = new File("c:\\aaaa\\"+"AAA.txt"); 
            
            
            if(!file.exists()){ 
                try { 
    file.createNewFile(); 
    } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 

        
    PrintWriter out=null; 
    try { 
    out = new PrintWriter(new BufferedWriter(new FileWriter("c:\\aaaa\\"+"AAA.txt"))); 
    // 将数据写入文件 
    out.write("aaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); 
    //关闭流 
    out.close(); } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } }把这个试一下,你就知道怎么做了
      

  4.   

    现在你得到里面的数据了,那再写入到txt应该不难吧。。
    FileOutputStream fos = new FileOutputStream("E:/123.txt");
    用FileOutputStream的write方法,往里写不就行了么。
      

  5.   

    //写文件
        public static void writeFile(String txtContent,String txtName){
         //System.out.println(txtName);
         //创建文件
    File f = new File(txtName);
    try{
    //新创建
    f.createNewFile();
    //使用文件流读入并写文件
    BufferedWriter output = new BufferedWriter(new FileWriter(f));
    output.write(txtContent);
    output.close();//关闭流
    }catch(Exception e){
    e.printStackTrace();
    }

    }
    这个方法第一个参数是要写的文本内容
    第二个参数是文件全路径
    别的自己调整一下就OK了
      

  6.   

    建议楼主看JAVA基础,文件操作.
      

  7.   


    try 

    OutputStream os = response.getOutputStream();//取得输出流 
    response.reset();// 清空输出流  
    response.setHeader("Content-disposition", "attachment;filename="+e_ePo+".xls");// 设定输出文件头 
    response.setContentType("text/plain; charset=gb2312");  //定义输出类型,为txt文件。这里我该怎么去取 os 的内容,并把它写到 文本文件里?请会的兄弟,给出代码,楼上的几位兄弟给出的方法,我还是每搞懂~~
    俺JAVA 是很烂的。
    } os.close(); 
    }catch(Exception e) 

    e.printStackTrace(); 

      

  8.   

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;
    public class ReadFile {
    public static void main(String args[])
    {
    Ex1 aa=new Ex1();

    File file=new File("D:/ioExample/streamFile.txt");
    try 
    {
    BufferedReader r=new BufferedReader(new FileReader(file));
    try 
    {
    String value="";
    while(value!=null)
    {
    value=r.readLine();
    if(value!=null)
    {
    System.out.println(value);
    }
    }

    catch (IOException e) 
    {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }

    catch (FileNotFoundException e) 
    {
    e.printStackTrace();
    }
    }
    }
      

  9.   

    zhangkai08111 你好,我是从数据库中读出数据,用户在客户端 点击“下载”按钮导出数据,生成txt文件,不是直接将文件写到盘符下。请问如何取输出流,并将其写到 TXT文件里?try 

    OutputStream os = response.getOutputStream();//取得输出流 
    response.reset();// 清空输出流  
    response.setHeader("Content-disposition", "attachment;filename="+e_ePo+".xls");// 设定输出文件头 
    response.setContentType("text/plain; charset=gb2312");  //定义输出类型,为txt文件。 这里我该怎么去取 os 的内容,并把它写到 文本文件里? 
    } os.close(); 
    }catch(Exception e) 

    e.printStackTrace(); 

      

  10.   

    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.OutputStream; public class WriteFile 
    {
    static FromKeybroad fk=new FromKeybroad();
      static String s=fk.FromKey();
    public static void main(String args[])
    {
    File fileDirectory=new File("D:/ioExample");//首先定义一个文件夹文件对象
    if(!fileDirectory.exists())//判断是否存在如果不存在就去创建
    {
    fileDirectory.mkdirs();
    }
    File streamFile=new File(fileDirectory,"streamFile.txt");//定义一个存放字节流数据的文件
    if(!streamFile.exists())//判断是否存在如果不存在就去创建
    {
    try 
    {
    streamFile.createNewFile();
    }
    catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }
    try 
    {
    OutputStream output=new BufferedOutputStream(new FileOutputStream(streamFile));//生成一个代有缓冲区的文件输出流
    byte data[]=s.getBytes();//将字符串数据转换称字节数据因为咱们生成的是字节输出流
    try
    {
    output.write(data);//写数据
    System.out.println("数据写入.....");

    catch (IOException e)
    {
    e.printStackTrace();
    }
    finally
    {
    try 
    {
    output.close();//关闭流
    System.out.println("关闭流");
    }
    catch (IOException e) 
    {
    e.printStackTrace();
    }
    }

    catch (FileNotFoundException e)
    {
    e.printStackTrace();
    }

    System.out.print("数据成功写入文件,完整路径为:"+streamFile);
    }
    }
      

  11.   


    请文 dongqdonglin  ,
    static FromKeybroad fk=new FromKeybroad();
     static String s=fk.FromKey();其中 FromKeybroad 报错,它是哪里来的 ?
    我要是不是吧 txt文件写到 盘符下,而是利用:
    response.setHeader("Content-disposition", "attachment;filename="+e_ePo+".txt) 
    response.setContentType("text/plain; charset=gb2312"); //定义输出类型  
    让用户下载 到客户端,在申明一次,不是直接写入磁盘,是让用户在客户端下载txt文件。
      

  12.   

     ServletOutputStream out = response()
        .getOutputStream();
      response().setContentType("application/txt");
      
      appContext.getResponse().setHeader("Content-disposition",
        "attachment; " + "filename=temp.txt");  BufferedInputStream bis = null;
      BufferedOutputStream bos = null;
      try {
       FileInputStream fin = new FileInputStream(
         fileName);
       bis = new BufferedInputStream(fin);
       bos = new BufferedOutputStream(out);
       byte buff[] = new byte[1024];
       int bytesRead;
       while (-1 != (bytesRead = bis.read(buff, 0, buff.length)))
        bos.write(buff, 0, bytesRead);
      } catch (MalformedURLException e) {
       e.printStackTrace();
      } catch (IOException e) {
       e.printStackTrace();
      } finally {
       if (bis != null)
        bis.close();
       if (bos != null)
        bos.close();
      }   
        } 
      

  13.   

    appContext.getResponse()换成response
    以前项目封装了一层
      

  14.   

    简单的流读写操作就可以,比EXL简单多了