大家好,小弟编程时遇到一个问题,大家帮帮忙,谢谢import java.io.FileWriter  这样导入编译正常,运行正常但import java.io.*;  这样导入就报找不到FileWriter类这是为什么啊,谢谢大家

解决方案 »

  1.   

    .....试验了一下没问题啊。把代码发出来看一下!
    package edu.practice.JDBC.test_clob;import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileReader;
    import java.io.*;
    import java.io.IOException;
    import java.io.Reader;
    import java.io.Writer;
    import java.sql.Clob;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;import edu.practice.JDBC.JDBC_MySQL_Utils;
    import edu.practice.JDBC.JDBC_MySQL_Utils_Sing1;public class TestClob { private final static String SQL_QUERY = "SELECT CLOB_TEXT FROM CLOB_TEXT WHERE ID=?"; private final static String SQL_INSERT = "INSERT INTO CLOB_TEXT (CLOB_TEXT) VALUES (?)"; public static void main(String[] args) throws IOException {
    jdbcTemplate1(1);
    } public static void jdbcTemplate1(int id) throws IOException {
    Connection conn = null;
    PreparedStatement ps = null;
    ResultSet rs = null;
    try {
    conn = JDBC_MySQL_Utils.getConnection();
    ps = conn.prepareStatement(SQL_QUERY);
    ps.setInt(1, id);
    rs = ps.executeQuery();
    while (rs.next()) {
    Clob clob = rs.getClob("CLOB_TEXT");
    Reader reader = clob.getCharacterStream();
    // rs.getCharacterStream("CLOB_TEXT");
    File file = new File("GetPracticeProperties_bak1.java");
    Writer writer = new BufferedWriter(new FileWriter(file));
    char buff[] = new char[1024];
    for (int i = 0; (i = reader.read(buff)) > 0;) {
    writer.write(buff, 0, i);
    }
    writer.close();
    reader.close();
    }
    } catch (SQLException e) {
    e.printStackTrace();
    } finally {
    JDBC_MySQL_Utils.free(rs, ps, conn);
    }
    } public static void jdbcTemplate2() throws IOException {
    Connection conn = null;
    PreparedStatement ps = null;
    ResultSet rs = null;
    try {
    conn = JDBC_MySQL_Utils_Sing1.getJDBCMySQLUtilsSing1Instance()
    .getConnection();
    ps = conn.prepareStatement(SQL_INSERT);
    File file = new File(
    "src/edu/practice/getProperties/GetPracticeProperties.java");
    Reader reader = new BufferedReader(new FileReader(file));
    ps.setCharacterStream(1, reader, (int) file.length());
    int i = ps.executeUpdate();
    reader.close();
    System.out.println(i);
    } catch (SQLException e) {
    e.printStackTrace();
    } finally {
    JDBC_MySQL_Utils_Sing1.getJDBCMySQLUtilsSing1Instance().free(rs,
    ps, conn);
    }
    }
    }
      

  2.   

    楼主说的我也遇到过,每次都是把需要引入的类 路径完整写出来, 怀疑是IDE 的问题, 另外,不管什么理由, 最好不要使用
    import java.io.*;    这样导入其下所有类, 会占用不必要的系统资源,不是个好习惯
      

  3.   

    是不是你的类名写成了FileWriter了??
      

  4.   

    代码如下,谢谢大家了。package IO;import java.util.ArrayList;
    import java.io.FileWriter;
    //import java.io.*;public class WriteFile {

    public void writeFiler(String str,String fileName){
     FileWriter fw = null;
     try{
     fw = new FileWriter(fileName,true);
             fw.write(str+"\r\n");
             fw.close();
     }catch(Exception e){
     e.printStackTrace();
     }finally{
     try{
     fw.close();
     } catch (Exception e) {
                     e.printStackTrace();
                 }
     
     }
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    String fileName="c:/my.txt";
    ArrayList newList =new ArrayList();
    String[] arr=new String[100000];

    WriteFile wf=new WriteFile();
    for(int i=0;i<arr.length;i++){
    arr[i]="测试数据"+i;
    wf.writeFiler(arr[i],fileName);
    }
    String str1="bbb";


    System.out.println("导入结束"+fileName);

    }}
      

  5.   


    如果是IDE问题,有办法解决吗
      

  6.   


    有时候是有些莫名其妙的问题老出现,楼上这位说得在理,另外我们用Eclipse,它导入类时,也是完整路径,不是*
      

  7.   

    前几天看到过这样一种情况:swing.List和util.List (我记不清了),如果没有注明,编译的时候会出错的