重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

java扫描仪的代码 java扫描仪接收代码

用java程序来获取扫描仪里面的数据

下面是一个解决方案 , 用到 Morena 6.0 Framework 框架 里的 javaTwain功能 , 貌似搜了一下

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站建设、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的响水网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

好像要收费的,不过你可以找找是否有破解版的,没有的话,那就只有走偏门了 看是否能通过反编译 ,看改源代码了......

RE:

javatwain may be a powerful solution,you can go to to download the newest package.

JavaTwain version 5.1 is a part of the Morena 6.0 Framework now.

below is an simple example:

/*

* $Id: ExampleShow.java,v 1.5 2002/07/15 13:48:55 mmotovsk Exp $

*

* Copyright (c) 1999-2002 Gnome spol. s r.o. All Rights Reserved.

*

* This software is the confidential and proprietary information of

* Gnome spol. s r.o. You shall not disclose such Confidential

* Information and shall use it only in accordance with the terms

* of the license agreement you entered into with Gnome.

*/

// JavaTwain package version 5.1

/**

ExampleShow demonstrates how to scan an image using defaults

from the Twain source.

*/

import java.awt.*;

import java.awt.event.*;

import SK.gnome.twain.*;

public class ExampleShow extends Frame

{ Image image;

public void paint(Graphics g)

{ if (null!=image)

g.drawImage(image, 0, 0, this);

}

WindowListener windowAdapter=new WindowAdapter()

{ public void windowClosing(WindowEvent e)

{ System.exit(0);

}

};

public ExampleShow()

{ try

{ addWindowListener(windowAdapter);

setTitle("ExampleShow Frame Application");

// Open TWAIN select source dialog box

// and initialize the source selected by the user.

TwainSource source=TwainManager.selectSource(null);

image=Toolkit.getDefaultToolkit().createImage(source);

// wait for the image to be completed

MediaTracker tracker=new MediaTracker(this);

tracker.addImage(image, 0);

// this is the moment the scanner user interface pops up

System.err.println("Start loading image ...");

try

{ tracker.waitForAll();

}

catch (InterruptedException e)

{ System.err.println("Image loading was interrupted!");

e.printStackTrace();

}

tracker.removeImage(image);

System.err.println("Image loaded ...");

setSize(image.getWidth(this), image.getHeight(this));

setVisible(true);

TwainManager.close();

}

catch (TwainException e)

{ e.printStackTrace();

}

}

public static void main(String[] args)

{ new ExampleShow();

}

}

java扫描仪接收单个字符

import java.util.Scanner;

public class Tese1{

{

public static void main ( String[] args )

{

Scanner in = new Scanner (System.in);

System.out.println ("请输入你的姓名");

String name = in.next ();

System.out.println ("姓名:" + name);

System.out.println ("请输入你的年龄");

int age = in.nextInt ();

System.out.println ("年龄:" + age);

System.out.println ("请输入你的性别");

String xb = in.next ();

System.out.println ("性别:" + xb);

in.close ();

}

}

如何在Java中调用扫描仪的源代码

下载一个jar包,放在lib目录下面,然后再把这个jar加入到项目里面就可以了,右键add as libary,就可以引用源代码了

JAVA中的扫描仪

Scanner是jdk1.5新增的一个类,使用该类可创建一个对象,Scanner scan=new Scanner(System.in);意思是声明一个Scanner类的对象,并实例化,system.in即接收键盘输入。

java中怎么调用扫描仪

1。先搞清楚要在哪种类型的程序中调用扫描仪

如果开发的程序是java application或者基于 swing的程序,可以算作是单机或者 c/s架构的程序,applet和java fx技术也可以这么算,因为都是直接通过java程序去操控扫描仪设备。

如果是基于浏览器的应用,即b/s架构的程序,扫描图像的工作是在客户端完成的,这种情况下Java程序其实是接收和保存扫描仪读取的图像结果,并不需要直接的控制扫描仪工作,这一点上和c/s架构的程序有本质的区别。

2。架构与技术应用

2.1 c/s架构程序的扫描仪调用

c/s架构需要通过java代码直接操控扫描仪设备,java语言本身被设计为跨o/s平台,对特定平台的硬件操控能力有限,因此需要借助外部技术实现扫描仪控制调用,可以通过jni(java原生应用程序接口) 技术去实现扫描仪调用,具体的细节实现就是jni中定义扫描仪操作方法,如scan()等方法,然后使用javah生成c语言的.h头文件,然后使用vc等编程语言去实现jni接口方法。

在windows平台和mac平台上面,操作扫描仪都可以通过twain协议

总之c/s架构的java程序调用扫描仪通过jni+twain编程既可完成。

2.2 b/s架构程序的扫描仪调用

b/s架构的扫描仪调用在前面已经提到过,java程序实现上做的事情是接收扫描结果图像数据 ,例如在struts2的 action中或者jsp/servlet等等程序中接收扫描仪图像扫描结果,真实的客户端扫描仪调用应该借助客户端技术去实现。

在Linux中的Mozilla浏览器中如何调用扫描仪扫描图像呢?这个着实是个难题,需要做Mozilla的插件才可以,但是在windows平台有ActiveX技术供程序员使用,因此浏览器是在windows平台中的话借助Activex技术即可扩展浏览器能力。

如何用java语言实现端口扫描器

使用 DatagramSocket(int port) 建立socket(套间字)服务。

将数据打包到DatagramPacket中去

通过socket服务发送 (send()方法)

关闭资源

public static void main(String[] args) {

DatagramSocket ds = null; //建立套间字udpsocket服务

try {

ds = new DatagramSocket(8999); //实例化套间字,指定自己的port

} catch (SocketException e) {

System.out.println("Cannot open port!");

System.exit(1);

}

byte[] buf= "Hello, I am sender!".getBytes(); //数据

InetAddress destination = null ;

try {

destination = InetAddress.getByName("192.168.1.5"); //需要发送的地址

} catch (UnknownHostException e) {

System.out.println("Cannot open findhost!");

System.exit(1);

}

DatagramPacket dp =

new DatagramPacket(buf, buf.length, destination , 10000);

//打包到DatagramPacket类型中(DatagramSocket的send()方法接受此类,注意10000是接受地址的端口,不同于自己的端口!)

try {

ds.send(dp); //发送数据

} catch (IOException e) {

}

ds.close();

}

}

接收步骤:

使用 DatagramSocket(int port) 建立socket(套间字)服务。(我们注意到此服务即可以接收,又可以发送),port指定监视接受端口。

定义一个数据包(DatagramPacket),储存接收到的数据,使用其中的方法提取传送的内容

通过DatagramSocket 的receive方法将接受到的数据存入上面定义的包中

使用DatagramPacket的方法,提取数据。

关闭资源。

import java.net.*;

public class Rec {

public static void main(String[] args) throws Exception {

DatagramSocket ds = new DatagramSocket(10000); //定义服务,监视端口上面的发送端口,注意不是send本身端口

byte[] buf = new byte[1024];//接受内容的大小,注意不要溢出

DatagramPacket dp = new DatagramPacket(buf,0,buf.length);//定义一个接收的包

ds.receive(dp);//将接受内容封装到包中

String data = new String(dp.getData(), 0, dp.getLength());//利用getData()方法取出内容

System.out.println(data);//打印内容

ds.close();//关闭资源

}

}


文章名称:java扫描仪的代码 java扫描仪接收代码
URL链接:http://cqcxhl.com/article/hjchhg.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP