我现在在linux机器上有个文件a.txt,执行lp   a.txt   通过tcp协议在windows机器上打印出a.txt。如何实现?写程序或其它方式。高手指点一下!!

解决方案 »

  1.   

    不知道你说的打印是在屏幕上显示还是在打印机上打印,如果屏幕显示地话很简单.
    linux端import java.io.*;
    import java.net.*
    class Linux
    {
       public static void main(String[] arg) throws Exception 
       {
          BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
          String cmd=br.readLine();
          if(cmd...)//这里可以加上一些判断语句,比如cmd符合哪些要求才让程序向下执行
           {
           ...
          }
          BufferedReader brFile=new BufferedReader(new FileReader("文件路径");
          Socket s=new Socket(InetAddress.getByName("在这里输入win机的IP"),win机的端口号);
          PrintStream ps=new PrintStream(s.getOutputStream());
          String s=null;
         while((s=brFile.readLine())!=null)
          ps.println(s);
         brFile.close();
          s.close();
        }
    }
    win机端import java.io.*;
    import java.net.*;
      class Windows
      {
         public static void main(String[] arg)throws Exception
        {
             ServerSocket ss=new ServerSocket(win机监听端口号);
             Socket s=ss.accept();
             BufferedReader br=new BufferedReader(new InputStreamReader(s.getInputStream()));
             String s2=null
             while((s2=br.readLine())!=null)
             System.out.println(s2);
             br.close();
             s.close();
        }
      }