我必须制作一个基于RFID的考勤系统,我必须先从标签中读取数据并写入数据库,然后找出它是哪个学生。我的问题是如何从RFID标签。所提供的JAVA输入缓冲器类是否足够用于输入和输出,还是我必须采取不同的方法。基于RFID的读写JAVA
2
A
回答
3
您可以为此使用Java通信API。我正在做同样的工作,java comm api和rxtx完全适用于此。我有一个为此编写的程序。在这里你去:
import java.io.*;
import java.util.*;
import javax.comm.*;
public class SimpleRead implements Runnable, SerialPortEventListener {
static CommPortIdentifier portId;
static Enumeration portList;
InputStream inputStream;
SerialPort serialPort;
Thread readThread;
public static void main(String[] args) {
portList = CommPortIdentifier.getPortIdentifiers();
while (portList.hasMoreElements()) {
portId = (CommPortIdentifier) portList.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
if (portId.getName().equals("COM13")) {
// if (portId.getName().equals("/dev/term/a")) {
SimpleRead reader = new SimpleRead();
}
}
}
}
public SimpleRead() {
try {
serialPort = (SerialPort) portId.open("SimpleReadApp", 2000);
} catch (PortInUseException e) {System.out.println(e);}
try {
inputStream = serialPort.getInputStream();
} catch (IOException e) {System.out.println(e);}
try {
serialPort.addEventListener(this);
} catch (TooManyListenersException e) {
System.out.println(e);
}
serialPort.notifyOnDataAvailable(true);
try {
serialPort.setSerialPortParams(9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);
} catch (UnsupportedCommOperationException e) {
System.out.println(e);
}
readThread = new Thread(this);
readThread.start();
}
public void run() {
try {
Thread.sleep(20000);
} catch (InterruptedException e) {System.out.println(e);}
}
public void serialEvent(SerialPortEvent event) {
switch(event.getEventType()) {
case SerialPortEvent.BI:
case SerialPortEvent.OE:
case SerialPortEvent.FE:
case SerialPortEvent.PE:
case SerialPortEvent.CD:
case SerialPortEvent.CTS:
case SerialPortEvent.DSR:
case SerialPortEvent.RI:
case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
break;
case SerialPortEvent.DATA_AVAILABLE:
byte[] readBuffer = new byte[20];
try {
while (inputStream.available() > 0) {
int numBytes = inputStream.read(readBuffer);
}
System.out.print(new String(readBuffer));
} catch (IOException e) {System.out.println(e);}
break;
}
}
}
1
它从那以后 一直是过去几年我曾与RFID(ThinkMagic阅读器)和Java,但每次在当时使用的读者我 有其自己的专有API。 只有在购买阅读器的情况下才能访问JAR。 时代可能已经改变,可能是开源阅读器/实现,但请查看当前品牌和型号的 供应商网站。一旦你有权访问它们,这些API非常简单。
相关问题
- 1. 基于RFID的阅读和写作C
- 2. MCU + RFID标签,用于读取和写入RFID信息
- 3. 好的RFID读写器想要
- 4. 要使用哪种RFID和RFID读写器?
- 5. 如何从USB RFID读写器与C#
- 6. 移动设备RFID读写器
- 7. 如何在JAVA中使用RFID读写器
- 8. 写入RFID
- 9. 的Java:写入和读取密码加密基于私钥
- 10. 在基于平面文件的Java内存读写缓存中
- 11. 类型安全“基于schem”* Java *的分层*配置读/写库?
- 12. 使用基于Java的API读取/写入Excel - vogella
- 13. RFID阅读器/天线可以在旅途中书写RFID标签吗?
- 14. raspberry pi rfid基础知识
- 15. MF522-AN RFID读写器和Arduino的问题
- 16. Java上的RFID错误
- 17. 从RFID卡读取代码
- 18. 远距离RFiD阅读
- 19. 读取数据与RFID
- 20. RFID阅读器标准
- 21. RFID阅读程序故障
- 22. 从USB读取rfid标签
- 23. WebUSB和RFID阅读器
- 24. 有没有使用RFID阅读器追踪RFID的方法?
- 25. 需要写中断基于Java模块
- 26. 读/写在Java
- 27. 如何与Wiegand RFID读写器进行交互?
- 28. 通过iphone应用程序读取和写入RFID芯片
- 29. 在Nexus-S上阅读和书写Mifare Classic 1K RFID
- 30. 用于GPS导航仪设备和RFID阅读器的编程?
能否请您更详细地解释您的答案。 – Luffy
@Luffy很抱歉回到这么晚。这里有一个链接可以用来更详细地了解它。我已经使用了java通信API来进行串口之间的通信。 http://docs.oracle.com/cd/E17802_01/products/products/javacomm/reference/api/javax/comm/package-summary.html –