java Socket接收資料亂碼問題
系統傳送資料程式碼:
socket = new Socket(SysConfigInfo.getConfigInfo().getMsgIp(),
SysConfigInfo.getConfigInfo().getMsgPort());
outStream = new DataOutputStream(socket.getOutputStream());
//優先順序
outStream.writeInt(nOrder);
//動作
outStream.writeInt(nAction);
//型別
outStream.writeInt(nMode);
outStream.flush();
outStream.close();
outStream = null;
socket.close();
接收socket的資料用C寫的,現在需要用java寫,如下:
public ServerThread(Socket s)
{
//接收receiveServer傳來的套接字
this.m_ClientRequest = s;
InputStreamReader reader;
OutputStreamWriter writer;
try
{
//初始化輸入、輸出流
reader = new InputStreamReader(m_ClientRequest.getInputStream());
writer = new OutputStreamWriter(m_ClientRequest.getOutputStream());
//out = new PrintWriter(m_ClientRequest.getOutputStream(),true);
m_Input = new BufferedReader(reader);
m_Output = new PrintWriter(writer,true);
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
}
public void run()
{
String strSql = null;
char [] buffer = new char[8192];
String sReturn = null;
int nDataLen;
Msg = new ShowMsg("資料處理執行緒啟動:" + getName());
try
{
//讀取客戶端傳送的資料
nDataLen = m_Input.read(buffer);
if(nDataLen > 0 )
{
//strSql = String.valueOf(buffer,0,nDataLen - 1 );
strSql = buffer.toString();
byte[] tmp = strSql.getBytes();
socket = new Socket(SysConfigInfo.getConfigInfo().getMsgIp(),
SysConfigInfo.getConfigInfo().getMsgPort());
outStream = new DataOutputStream(socket.getOutputStream());
//優先順序
outStream.writeInt(nOrder);
//動作
outStream.writeInt(nAction);
//型別
outStream.writeInt(nMode);
outStream.flush();
outStream.close();
outStream = null;
socket.close();
接收socket的資料用C寫的,現在需要用java寫,如下:
public ServerThread(Socket s)
{
//接收receiveServer傳來的套接字
this.m_ClientRequest = s;
InputStreamReader reader;
OutputStreamWriter writer;
try
{
//初始化輸入、輸出流
reader = new InputStreamReader(m_ClientRequest.getInputStream());
writer = new OutputStreamWriter(m_ClientRequest.getOutputStream());
//out = new PrintWriter(m_ClientRequest.getOutputStream(),true);
m_Input = new BufferedReader(reader);
m_Output = new PrintWriter(writer,true);
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
}
public void run()
{
String strSql = null;
char [] buffer = new char[8192];
String sReturn = null;
int nDataLen;
Msg = new ShowMsg("資料處理執行緒啟動:" + getName());
try
{
//讀取客戶端傳送的資料
nDataLen = m_Input.read(buffer);
if(nDataLen > 0 )
{
//strSql = String.valueOf(buffer,0,nDataLen - 1 );
strSql = buffer.toString();
byte[] tmp = strSql.getBytes();
//System.out.println("" +tmp);
for(int i = 0; i < tmp.length; i ++){
//out.print(tmp);
System.out.println("" + String.valueOf(tmp));
}
相關文章
- 插入資料庫亂碼問題資料庫
- Java 中文 亂碼問題Java
- BW資料匯入亂碼問題
- pdo_mysql 資料庫亂碼問題MySql資料庫
- Java 解決中文亂碼問題Java
- Java,MySQL中文亂碼問題求教JavaMySql
- java處理中文亂碼問題Java
- TOMCAT 請求資料編碼亂碼 問題Tomcat
- linux亂碼和資料庫亂碼的問題簡單排查Linux資料庫
- SqlServer資料庫中文亂碼問題解決SQLServer資料庫
- MySQL資料匯入匯出亂碼問題MySql
- 解決Jquery Ajax提交 伺服器端接收中文亂碼問題jQuery伺服器
- 小議Servlet接收post和get混合提交中文亂碼問題薦Servlet
- Servlet接收JSP引數亂碼問題解決辦法薦ServletJS
- java中亂碼問題解決方法Java
- Java GBK 中文亂碼問題分析Java
- Java Web開發中文亂碼問題JavaWeb
- java sound與socket問題!Java
- mysql資料庫concat拼接字串亂碼問題MySql資料庫字串
- java中解決request中文亂碼問題Java
- java抓取網頁的亂碼問題(通用)Java網頁
- Java Web後臺從request裡面獲取的資料是亂碼問題JavaWeb
- flex亂碼問題Flex
- mysql亂碼問題MySql
- 解決java socket在傳輸漢字時出現截斷導致亂碼的問題Java
- 為什麼使用Socket接收時丟失資料?
- 解決pl/sql developer中資料庫插入資料亂碼問題SQLDeveloper資料庫
- Ajax接收int型別亂碼型別
- 使用postman傳送資料,springmvc接收資料的問題PostmanSpringMVC
- Java IO輸入輸出及亂碼問題Java
- Java讀取文字檔案中文亂碼問題Java
- 華納雲 如何解決Linux 資料庫亂碼問題?Linux資料庫
- 資料遷移(MYSQL--ORACLE)中碰到的亂碼問題MySqlOracle
- EasyUI 中文亂碼問題UI
- MSSQL中文亂碼問題SQL
- java的socket程式設計問題Java程式設計
- SSM解決中文存入資料庫亂碼問題(記錄自己的問題)SSM資料庫
- servlet接收xml資料流[java]ServletXMLJava