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

📄 serialconnection_new.java

📁 利用JAVA采用网络通讯的例子,支持weblogic及websphere
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
      case SerialPortEvent.RI:
        CFunction.putHintString(1, "RI event occcured." + "端口号:" +
                                m_SerialParameters.getPortName());

        break;

      case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
        CFunction.putHintString(1,
                                "OUTPUT_BUFFER_EMPTY event occcured." + "端口号:" +
                                m_SerialParameters.getPortName());

        break;
      default:
        CFunction.putHintString(1, "DEFAULT event occcured." + "端口号:" +
                                m_SerialParameters.getPortName());

        break;

    }

    return;

  }

  /**
       * Handles ownership events. If a PORT_OWNERSHIP_REQUESTED event m_InputStream
   * received a dialog box m_InputStream created asking the user if they are
   * willing to give up the port. No action m_InputStream taken on other types
   * of ownership events.
   */
  public void ownershipChange(int type) {
    if (type == CommPortOwnershipListener.PORT_OWNERSHIP_REQUESTED) {
      //	    PortRequestedDialog prd = new PortRequestedDialog(parent);
      ;
    }
    return;
  }

  /**
   * A class to handle <code>KeyEvent</code>s generated by the messageAreaOut.
       * When a <code>KeyEvent</code> occurs the <code>char</code> that m_InputStream
   * generated by the event m_InputStream read, converted to an <code>int</code> and
   * writen to the <code>OutputStream</code> for the port.
   */
  /*    class KeyHandler extends KeyAdapter {
          OutputStream m_OutputStream;
          public KeyHandler(OutputStream m_OutputStream) {
              super();
              this.m_OutputStream = m_OutputStream;
          }
          public void keyTyped(KeyEvent evt) {
              char newCharacter = evt.getKeyChar();
              try {
                  m_OutputStream.write((int)newCharacter);
              } catch (IOException e) {
                  System.err.println("OutputStream write error: " + e);
              }
          }
      }
   */

  public int sendBuffer(byte[] m_SendBuffer, int m_Length) {
    try {
      this.m_OutputStream.write(m_SendBuffer, 0, m_Length);
    }
    catch (IOException m_IoException) {
      CFunction.putHintString(1,
                              "sendBuffer1 in SerialConnection_new Error #1 " +
                              "端口号:" +
                              m_SerialParameters.getPortName() + m_IoException);
      return -1;
      //           m_IoException.printStackTrace();
    }

    return 1;
  }

  public int sendBuffer(String m_String) {
    try {
      OutputStream outputStream = null;
      if (this.m_OutputStream == null) {
        //CollectorDefine.SystemPrintln (" ############################ this.m_OutputStream == null ");
        return -1;
      }

      outputStream = new ConvertedOutputStream(this.m_OutputStream);
      outputStream.write(m_String.getBytes());
      outputStream = null;
    }
    catch (IOException m_IoException) {
      CFunction.putHintString(1,
                              "sendBuffer2 in SerialConnection_new Error #1" +
                              "端口号:" +
                              m_SerialParameters.getPortName() + m_IoException);
      return -1;
      //            m_IoException.printStackTrace();
    }

    return 1;
  }

  public int sendString(String m_String) {
    try {
      this.m_OutputStream.write(m_String.getBytes());
    }
    catch (IOException m_IoException) {
      CFunction.putHintString(1,
                              "sendString in SerialConnection_new Error #1 " +
                              "端口号:" +
                              m_SerialParameters.getPortName() + m_IoException);
      return -1;
      //            m_IoException.printStackTrace();
    }

    return 1;
  }

  /*
      public String recStringBuffer(byte[] RecBuffer, boolean m_Lowercase,
                                  int m_TimeCounter) {
      int m_Count = 0;
      int m_SuccessFlag = 1;
      String m_receiveString = "";
      try {
        int m_RecAvailableNum = 0;
        int bytes = 0;
        while (m_SuccessFlag == 1) {
          m_RecAvailableNum = m_InputStream.available();
          if (m_RecAvailableNum > 0 &&
              m_RecAvailableNum <= CollectorDefine.MAX_BYTE) {
            //CollectorDefine.SystemPrintln (" rec recStringBuffer");
            //                    byte [] m_TempBuffer = new byte[CollectorDefine.MAX_BYTE];
            bytes = m_InputStream.read(RecBuffer);
            String m_String = new String(RecBuffer, 0, bytes);
            if (m_Lowercase == true) {
              m_receiveString = m_String.toLowerCase();
            }
            else {
              m_receiveString = m_String;
            }
            break;
          }
          try {
            Thread.sleep(CollectorDefine.COMM_SLEEP_TIME);
          }
          catch (InterruptedException interruptedexception) {
            CFunction.putHintString(1,
                "recStringBuffer in SerialConnection_new Error #1 " + "端口号:" +
                m_SerialParameters.getPortName());
            return "";
          }
          m_Count++;
          if (m_Count > m_TimeCounter) {
            m_SuccessFlag = -1;
          }
        }
      }
      catch (IOException m_IoException) {
        CFunction.putHintString(1,
       "recStringBuffer in SerialConnection_new Error #2" +
                                "端口号:" +
                                m_SerialParameters.getPortName());
        return "";
      }
      return m_receiveString;
    }
    public int recBuffer(byte[] RecBuffer, int m_TimeCounter) {
      int m_Count = 0;
      int m_RecNum = -1;
      try {
        int m_RecAvailableNum = 0;
        int bytes = 0;
        while (true) {
          m_RecAvailableNum = m_InputStream.available();
          if (m_RecAvailableNum > 0 &&
              m_RecAvailableNum <= CollectorDefine.MAX_BYTE) {
            bytes = m_InputStream.read(RecBuffer);
            m_RecNum = bytes;
            break;
          }
          try {
            Thread.sleep(CollectorDefine.COMM_SLEEP_TIME);
          }
          catch (InterruptedException m_InterruptedException) {
            CFunction.putHintString(1,
       "recBuffer1 in SerialConnection_new Error #1 " +
                                    "端口号:" +
                                    m_SerialParameters.getPortName());
            return -1;
          }
          m_Count++;
          if (m_Count > m_TimeCounter) {
            break;
          }
        }
      }
      catch (IOException m_IoException) {
        CFunction.putHintString(1,
                                "recBuffer1 in SerialConnection_new Error #2 " +
                                "端口号:" +
                                m_SerialParameters.getPortName());
        return -1;
      }
      return m_RecNum;
    }
    public int recBuffer(byte[] m_RecBuffer) {
      int m_Count = 0;
      int m_RecNum = -1;
      int m_TimeCounter = 1;
      try {
        int m_RecAvailableNum = 0;
        int bytes = 0;
        while (true) {
          m_RecAvailableNum = m_InputStream.available();
          if (m_RecAvailableNum > 0 &&
              m_RecAvailableNum <= CollectorDefine.MAX_BYTE) {
            bytes = m_InputStream.read(m_RecBuffer);
            m_RecNum = bytes;
            break;
          }
          try {
            Thread.sleep(CollectorDefine.COMM_SLEEP_TIME);
          }
          catch (InterruptedException interruptedexception) {
            CFunction.putHintString(1,
                                    "recBuffer2 in SerialConnection_new Error1 " +
                                    "端口号:" +
                                    m_SerialParameters.getPortName());
            return -1;
          }
          m_Count++;
          if (m_Count > m_TimeCounter) {
            break;
          }
        }
      }
      catch (IOException m_IoException) {
        CFunction.putHintString(1,
       "recBuffer2 in SerialConnection_new Error2 " + "端口号:" +
                                m_SerialParameters.getPortName());
        return -1;
      }
      return m_RecNum;
    }
   */

  public String recStringBuffer(byte[] RecBuffer, boolean m_Lowercase,
                                int m_TimeCounter) {
    int m_Count = 0;
    int m_SuccessFlag = 1;

    String m_receiveString = "";
    try {
      int m_RecAvailableNum = 0;
      while (m_SuccessFlag == 1) {
        m_RecAvailableNum = this.m_BufferStream.available();
        if (m_RecAvailableNum > 0 &&
            m_RecAvailableNum <= CollectorDefine.MAX_BYTE) {
          this.m_BufferStream.read(RecBuffer, 0, m_RecAvailableNum);
          String m_String = new String(RecBuffer, 0, m_RecAvailableNum);
          if (m_Lowercase == true) {
            m_receiveString = m_String.toLowerCase();
          }
          else {
            m_receiveString = m_String;
          }
          break;
        }

        try {
          Thread.sleep(CollectorDefine.COMM_SLEEP_TIME);
        }
        catch (InterruptedException interruptedexception) {
          CFunction.putHintString(1,
              "recStringBuffer in SerialConnection_new Error #1 " + "端口号:" +
              m_SerialParameters.getPortName());
          return "";
        }

        m_Count++;
        if (m_Count > m_TimeCounter) {
          m_SuccessFlag = -1;
        }
      }
    }
    catch (IOException m_IoException) {
      CFunction.putHintString(1,
                              "recStringBuffer in SerialConnection_new Error #2" +
                              "端口号:" +
                              m_SerialParameters.getPortName());
      return "";
    }

    return m_receiveString;

  }

  public int recBuffer(byte[] RecBuffer, int m_TimeCounter) {
    int m_Count = 0;
    int m_RecNum = -1;

    try {
      int m_RecAvailableNum = 0;
      int bytes = 0;
      while (true) {
        m_RecAvailableNum = this.m_BufferStream.available();
        if (m_RecAvailableNum > 0 &&
            m_RecAvailableNum <= CollectorDefine.MAX_BYTE) {
          this.m_BufferStream.read(RecBuffer, 0, m_RecAvailableNum);
          m_RecNum = m_RecAvailableNum;
          break;
        }

        try {
          Thread.sleep(CollectorDefine.COMM_SLEEP_TIME);
        }
        catch (InterruptedException m_InterruptedException) {
          CFunction.putHintString(1,
                                  "recBuffer1 in SerialConnection_new Error #1 " +
                                  "端口号:" +
                                  m_SerialParameters.getPortName());
          return -1;
        }

        m_Count++;
        if (m_Count > m_TimeCounter) {
          break;
        }
      }
    }
    catch (IOException m_IoException) {
      CFunction.putHintString(1,
                              "recBuffer1 in SerialConnection_new Error #2 " +
                              "端口号:" +
                              m_SerialParameters.getPortName());
      return -1;
    }

    return m_RecNum;

  }

  public int recBuffer(byte[] m_RecBuffer) {
    int m_Count = 0;
    int m_RecNum = -1;
    int m_TimeCounter = 1;

    try {
      int m_RecAvailableNum = 0;
      int bytes = 0;
      while (true) {
        m_RecAvailableNum = this.m_BufferStream.available();
        if (m_RecAvailableNum > 0 &&
            m_RecAvailableNum <= CollectorDefine.MAX_BYTE) {
          this.m_BufferStream.read(m_RecBuffer, 0, m_RecAvailableNum);
          m_RecNum = m_RecAvailableNum;
          break;
        }

        try {
          Thread.sleep(CollectorDefine.COMM_SLEEP_TIME);
        }
        catch (InterruptedException interruptedexception) {
          CFunction.putHintString(1,
                                  "recBuffer2 in SerialConnection_new Error1 " +
                                  "端口号:" +
                                  m_SerialParameters.getPortName());
          return -1;
        }

        m_Count++;
        if (m_Count > m_TimeCounter) {
          break;
        }
      }
    }
    catch (IOException m_IoException) {
      CFunction.putHintString(1,
                              "recBuffer2 in SerialConnection_new Error2 " + "端口号:" +
                              m_SerialParameters.getPortName());
      return -1;
    }

    return m_RecNum;
  }

  public int flushOutputStream() {

    try {
      if (m_Open == true) {
        this.m_OutputStream.flush();
      }
      else {
        CFunction.putHintString(1,
                                "flushOutputStream in SerialConnection_new Error1 " +
                                "端口号:" + m_SerialParameters.getPortName());
      }
    }
    catch (IOException m_IoException) {
      CFunction.putHintString(1,
                              "flushOutputStream in SerialConnection_new Error2 " +
                              "端口号:" + m_SerialParameters.getPortName());
      return -1;
    }
    return 1;
  }

  public int initConnection(long t) {
    return 1;
  }

  public boolean isAlive() {
    return true;
  }

  public int resetInputStream() {
    try {
      if (m_Open == true) {
        this.m_InputStream.reset();
      }
      else {
        CFunction.putHintString(1,
                                "resetInputStream in SerialConnection_new Error1 " +
                                "端口号:" + m_SerialParameters.getPortName());
      }
    }
    catch (IOException m_IoException) {
      CFunction.putHintString(1,
                              "resetInputStream in SerialConnection_new Error2 " +
                              "端口号:" +
                              m_SerialParameters.getPortName());
      return -1;
    }
    return 1;
  }

}

⌨️ 快捷键说明

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