⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 simplewrite.java

📁 java communications api 3.0
💻 JAVA
字号:
/* * @(#)SimpleWrite.java	1.12 98/06/25 SMI *  * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. *  * Sun grants you ("Licensee") a non-exclusive, royalty free, license * to use, modify and redistribute this software in source and binary * code form, provided that i) this copyright notice and license appear * on all copies of the software; and ii) Licensee does not utilize the * software in a manner which is disparaging to Sun. *  * This software is provided "AS IS," without a warranty of any kind. * ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, * INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND * ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY * LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE * SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS * BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, * INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, * HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING * OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN * ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. *  * This software is not designed or intended for use in on-line control * of aircraft, air traffic, aircraft navigation or aircraft * communications; or in the design, construction, operation or * maintenance of any nuclear facility. Licensee represents and * warrants that it will not use or redistribute the Software for such * purposes. */import java.io.*;import java.util.*;import javax.comm.*;/** * Class declaration * * * @author * @version 1.10, 08/04/00 */public class SimpleWrite {    static Enumeration	      portList;    static CommPortIdentifier portId;    static String	      messageString = "Hello, world!";    static SerialPort	      serialPort;    static OutputStream       outputStream;    static boolean	      outputBufferEmptyFlag = false;    /**     * Method declaration     *     *     * @param args     *     * @see     */    public static void main(String[] args) {	boolean portFound = false;	String  defaultPort = "/dev/term/a";	if (args.length > 0) {	    defaultPort = args[0];	} 	portList = CommPortIdentifier.getPortIdentifiers();	while (portList.hasMoreElements()) {	    portId = (CommPortIdentifier) portList.nextElement();	    if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {		if (portId.getName().equals(defaultPort)) {		    System.out.println("Found port " + defaultPort);		    portFound = true;		    try {			serialPort = 			    (SerialPort) portId.open("SimpleWrite", 2000);		    } catch (PortInUseException e) {			System.out.println("Port in use.");			continue;		    } 		    try {			outputStream = serialPort.getOutputStream();		    } catch (IOException e) {}		    try {			serialPort.setSerialPortParams(9600, 						       SerialPort.DATABITS_8, 						       SerialPort.STOPBITS_1, 						       SerialPort.PARITY_NONE);		    } catch (UnsupportedCommOperationException e) {}			    try {		    	serialPort.notifyOnOutputEmpty(true);		    } catch (Exception e) {			System.out.println("Error setting event notification");			System.out.println(e.toString());			System.exit(-1);		    }		    		    		    System.out.println(		    	"Writing \""+messageString+"\" to "			+serialPort.getName());		    try {			outputStream.write(messageString.getBytes());		    } catch (IOException e) {}		    try {		       Thread.sleep(2000);  // Be sure data is xferred before closing		    } catch (Exception e) {}		    serialPort.close();		    System.exit(1);		} 	    } 	} 	if (!portFound) {	    System.out.println("port " + defaultPort + " not found.");	}     } }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -