void open_money(){
     char cmd[10];
     QFile file( "/dev/lp0");
     if (file.open(IO_WriteOnly)){
        QTextStream stream( &file );
        sprintf(cmd, "\x1bp%c%c%c",0,60,255);
        for(int i = 0; i < 5; i++)
          stream << cmd[i];
          stream<< "\n" ;
          file.close();
        }  
     }
}
以上是用C写的一个函数
现在想用java实现
感谢各位会C、java的多多帮忙

解决方案 »

  1.   

    void open_money(){ 
        char cmd[10]={1,'b','p',0,60,255}; 
        BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(FileOutputStream( "/dev/lp0")); 
        for(int i = 0; i < 5; i++) 
              bw.write( cmd[i]); 
         bw.write('\n'); 
         bw.close(); 
     } 没有测试,应该问题不大
      

  2.   

    public void open_momey() throws IOException {
    PrintWriter writer = null;
    try {
    writer = new PrintWriter(new File("/dev/lp0"));
    String line = String.format("\x1bp%c%c%c",0,60,255);
    writer.println(line);
    } catch (IOException e) {
    // handl exception.
    } finally {
    if (writer != null) {
    writer.close();
    }
    }
    }
      

  3.   

    public class Test1 {    public static void main(String[] args) {
            Test1.open_momey();    }    public static void open_momey() {
            PrintWriter writer = null;
            try {
                writer = new PrintWriter(new File("/Users/Biao/Desktop/a.txt"));
                String line = String.format("\\x1bp%c%c%c", 0, 60, 255);
                System.out.println(line);
                writer.println(line);
            } catch (IOException e) {
                // handl exception.
            } finally {
                if (writer != null) {
                    writer.close();
                }
            }
        }
    }可以用这段代码测试一下。
    关键是在创建文件与String.format函数的使用。
      

  4.   


    Qt是一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。 
      自从1996年早些时候,Qt进入商业领域,它已经成为全世界范围内数千种成功的应用程序的基础。Qt也是流行的Linux桌面环境KDE 的基础,KDE是所有主要的Linux发行版的一个标准组件。 
      Qt支持下述平台: 
      MS/Windows - 95、98、NT 4.0、ME、2000、XP 和 Vista
      Unix/X11 - Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX和其它很多X11平台 
      Macintosh - Mac OS X 
      Embedded - 有帧缓冲(framebuffer)支持的Linux平台,Windows CE。 
      Symbian/S60 - 目前已经可以提供技术预览版本
      Qt是诺基亚公司的一个产品。 
      

  5.   

    Inhibitory :请你看看,
    我把sprintf(cmd, "\x1bp%c%c%c",0,60,255); 
    搞成char cmd[10]={1,'b','p',0,60,255};
    对不对? 
      

  6.   

    void open_money() throws Exception{ 
        char cmd[10]={'\0x1b','p',0,60,255}; 
        BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(FileOutputStream( "/dev/lp0")); 
        for(int i = 0; i < 5; i++) 
              bw.write( cmd[i]); 
         bw.write('\n'); 
         bw.close(); 
     }这样试试