錯誤太多了,改了一下,能編譯了
import java.io.*;class ReadFromFile {
    public static void main(String args[]) throws FileNotFoundException {
        System.out.println("请输入目录:");        /* 构造带读取文件目录 */
        StringBuffer stfDir = new StringBuffer();        /* 从键盘获取数字 */
        try {
            char aa = (char) System.in.read();
            while (aa != '\n') {
                stfDir.append(aa);            }
        } catch (IOException ioe) {
            ioe.printStackTrace();
        }        File dir = new File(stfDir.toString());        System.out.println("请输入文件名称:");        StringBuffer stfFileName = new StringBuffer();        try {
            char ch = (char) System.in.read();
            while (ch != '\n') {
                stfFileName.append(ch);
            }
        } catch (IOException ioe) {
            ioe.printStackTrace();
        }        /* 创建文件对象 */
        File readFrom = new File(dir, stfFileName.toString());        /* 判断文件是否为目录,具有的权限 */
        try {
            if (readFrom.isFile() && readFrom.canWrite() && readFrom.canRead()) {
                RandomAccessFile rafFile = new RandomAccessFile(readFrom, "rw");                while (rafFile.getFilePointer() < rafFile.length())
                    System.out.println(rafFile.readLine());
                rafFile.close();
            } else {
                System.out.println("文件关闭");            }
        } catch (IOException ioe) {
            ioe.printStackTrace();
        }
    }
}

解决方案 »

  1.   

    char aa = (char)System.in.read())!='\n'
    括号都错了。
      

  2.   

    这样可以了
    关键是:
    File dir = new File(stfDir.toString().trim());
    要去掉空格,否则显示不出来
    import java.io.*;class ReadFromFile
    {
    public static void main(String args[])
    {
    char aa;
    System.out.println("&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&Auml;&iquest;&Acirc;&frac14;&pound;&ordm;");

    /*&sup1;&sup1;&Ocirc;ì&acute;&oslash;&para;&Aacute;&Egrave;&iexcl;&Icirc;&Auml;&frac14;&thorn;&Auml;&iquest;&Acirc;&frac14;*/
    StringBuffer stfDir = new StringBuffer();

    /*&acute;&Oacute;&frac14;ü&Aring;&Igrave;&raquo;&ntilde;&Egrave;&iexcl;&Ecirc;&yacute;×&Ouml;*/
    try{
    while ((aa=(char)System.in.read())!='\n')
    {
    stfDir.append(aa);

    }
    }catch(Exception e){
    System.out.println(e);
    }

    File dir = new File(stfDir.toString().trim());

    System.out.println("&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&Icirc;&Auml;&frac14;&thorn;&Atilde;&ucirc;&sup3;&AElig;&pound;&ordm;");

    StringBuffer stfFileName = new StringBuffer();


    char ch;

    try{
    while((ch=(char)System.in.read())!='\n')
    {
    stfFileName.append(ch);
    }
    }catch(Exception e){
    System.out.println(e);
    }

    /*&acute;&acute;&frac12;¨&Icirc;&Auml;&frac14;&thorn;&para;&Ocirc;&Iuml;ó*/
    File readFrom = new File(dir,stfFileName.toString().trim());


    /*&Aring;&ETH;&para;&Iuml;&Icirc;&Auml;&frac14;&thorn;&Ecirc;&Ccedil;·&ntilde;&Icirc;&ordf;&Auml;&iquest;&Acirc;&frac14;&pound;&not;&frac34;&szlig;&Oacute;&ETH;&micro;&Auml;&Egrave;¨&Iuml;&THORN;*/
    try{
    if(readFrom.isFile() &&  readFrom.canWrite() && readFrom.canRead())
    {
    RandomAccessFile rafFile = new RandomAccessFile(readFrom,"rw");

    while(rafFile.getFilePointer()<rafFile.length())
    System.out.println(rafFile.readLine());
    rafFile.close();
    }else{
             System.out.println("&Icirc;&Auml;&frac14;&thorn;&sup1;&Oslash;±&Otilde;");
        
        }
      }catch(Exception e){
      System.out.println(e);
      }
    }
    }