相当与c++中system("cls");的效果
在cmd中
比如我要显示一行数据后,擦除掉这行,

解决方案 »

  1.   

    以下的代码可以执行dos命令:import java.util.*;
    import java.io.*;class StreamGobbler extends Thread
    {
        InputStream is;
        String type;
        
        StreamGobbler(InputStream is, String type)
        {
            this.is = is;
            this.type = type;
        }
        
        public void run()
        {
            try
            {
                InputStreamReader isr = new InputStreamReader(is);
                BufferedReader br = new BufferedReader(isr);
                String line=null;
                while ( (line = br.readLine()) != null)
                    System.out.println(type + ">" + line);    
                } catch (IOException ioe)
                  {
                    ioe.printStackTrace();  
                  }
        }
    }public class GoodWindowsExec
    {
        public static void main(String args[])
        {
            if (args.length < 1)
            {
                System.out.println("USAGE: java GoodWindowsExec <cmd>");
                System.exit(1);
            }
            
            try
            {            
                String osName = System.getProperty("os.name" );
                String[] cmd = new String[3];
    System.out.println( osName);
                if( osName.equals( "Windows 2000" ) )
                {
                    cmd[0] = "cmd.exe" ;
                    cmd[1] = "/C" ;
                    cmd[2] = args[0];
                    
                }
                else if( osName.equals( "Windows 95" ) )
                {
                    cmd[0] = "command.com" ;
                    cmd[1] = "/C" ;
                    cmd[2] = args[0];
                }
                
                Runtime rt = Runtime.getRuntime();
                System.out.println("Execing " + cmd[0] + " " + cmd[1] 
                                   + " " + cmd[2]);
                Process proc = rt.exec(cmd);
                // any error message?
                StreamGobbler errorGobbler = new 
                    StreamGobbler(proc.getErrorStream(), "ERROR");            
                
                // any output?
                StreamGobbler outputGobbler = new 
                    StreamGobbler(proc.getInputStream(), "OUTPUT");
                    
                // kick them off
                errorGobbler.start();
                outputGobbler.start();
                                        
                // any error???
                int exitVal = proc.waitFor();
                System.out.println("ExitValue: " + exitVal);        
            } catch (Throwable t)
              {
                t.printStackTrace();
              }
        }
    }
      

  2.   

    然后用以下语句执行即可:javac  GoodWindowsExec.java
    java GoodWindowsExec dir
    pause如果楼主不想在运行时才指定要运行的dos命令,可以在上面的文件中指定cmd[2]变量即可
      

  3.   

    很简单啊
    System.out.println("\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\");
    多打一点退格键不就可以了吗
      

  4.   

    哦,应该用System.out.print("\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\");
      

  5.   

    congliu(取次花丛都不顾,半缘修道半缘君。
    在c++下就一个system("cls");在java中就这么难实现吗?
    那如果想运行dos底下的命令是不是都很难啊passacaglia(神秘园) 
    你的很有创意~~~要是我要显示很多行后~~比如是个菜单选项~~~~我按个键退回到上级菜单,不是要清屏吗?那要多少个/b啊
      

  6.   

    楼主不会是在做一个用dos界面的系统吧
      

  7.   

    to :: congliu(取次花丛都不顾,半缘修道半缘君。) 呵呵,谢谢你了,又学到一点!不错!