关于J2ME与C#通过HTTP进行通信时的乱码问题(源码)

问题

我是一个J2ME的新手,刚刚开始学习,在尝试进行J2ME与HTTP站点进行通信时中文乱码。在BBS上看了一些大侠们观点,最简单高效的方式就是与JSP进行通信WRITEUTF、READUTF。但是由于我想链接的目的站点是C#的,想用最小的改动就可以进行使用。
解决办法!将C#项目中Web.config中的编码设定为utf-8(默认就是utf-8)。
下面是J2ME的源码:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.io.*;
import java.io.*;
import java.lang.String;;
public class HttpTest extends MIDlet
{

private Display display;

public HttpTest()
{
display = Display.getDisplay(this);
}

protected void startApp() throws MIDletStateChangeException
{
try {
String url = "http://192.168.0.25/lt133/webform1.aspx?phone=13800000000&msg1=c2";
HttpConnection hc = (HttpConnection)Connector.open(url);
DataInputStream dis = new DataInputStream(hc.openInputStream());

byte[] myData = new byte[100];
String content="";

dis.read(myData,0,myData.length);
content = new String(myData,"UTF-8");
Form f = new Form("HTTP Test");
f.append(content);
display.setCurrent(f);
}
catch(Exception e)
{
System.out.println(e.toString()) ;
notifyDestroyed();
}
}

protected void pauseApp()
{
}

protected void destroyApp(boolean arg0) throws MIDletStateChangeException
{
}
}
代码很结构很简单,就不加注示和说明了。希望能对和我一样的初学者有所帮助。也希望老鸟们能多关爱我们这些热爱这项事业的新手!!!!

时间: 2024-11-16 18:59:56

关于J2ME与C#通过HTTP进行通信时的乱码问题(源码)的相关文章

轻量级C#网络通信组件StriveEngine —— C/S通信开源demo(附源码)

前段时间,有几个研究ESFramework网络通讯框架的朋友对我说,ESFramework有点庞大,对于他们目前的项目来说有点"杀鸡用牛刀"的意思,因为他们的项目不需要文件传送.不需要P2P.不存在好友关系.也不存在组广播.不需要服务器均衡.不需要跨服务器网络通讯.甚至都不需要使用UserID,只要一个客户端能与服务端进行简单的稳定高效的C#网络通信组件就可以了.于是,他们建议我,整一个轻量级的C#网络通信组件来满足类似他们这种项目的需求.我觉得这个建议是有道理的,于是,花了几天时间,

提供服务的进程在与 World Wide Web Publishing 服务通信时遇到致命错误

  事件类型: 警告 事件来源: W3SVC 事件种类: 无 事件 ID: 1011 日期: 2007-7-2 事件: 15:30:31 用户: N/A 计算机: WWW 描述: 为应用程序池 'AppPool-BBS' 提供服务的进程在与 World Wide Web Publishing 服务通信时遇到致命错误.进程 ID 为 '2052'.数据字段包含错误号. 数据: 0000: 6d 00 07 80 m.. 经查证: 原因为同事删除了user用户组对system32目录的访问权限,更正

51单片机串口通信时,接收到数据后为什么在while语句中将EA置1

问题描述 51单片机串口通信时,接收到数据后为什么在while语句中将EA置1 刚进入while语句时为什么要将EA置1??程序如下: #include #define uchar unsigned char uchar numaflagbenum; sbit beep=P2^3; void init(); void main() { init(); while(1) { if(flag==1) { EA=0; flag=0; TR0=1; if(a==1) { benum=4; } if(a=

程序-PIC单片机串口通信时波特率的具体算法?

问题描述 PIC单片机串口通信时波特率的具体算法? 我那个单片机是PIC16F877A,晶振4M,我想将波特率设置为38400,求告知具体算法 真的救急.这是因为我蓝牙模块的波特率为38400的,最初我单片机程序的波特率是9600的,我是不是也要将单片机的程序的波特率也设置为38400呢,还是将蓝牙模块的波特率设置为9600呢,最主要是我电脑没蓝牙,没办法修改蓝牙模块的波特率. 解决方案 资料页的最后有个表格,上面有

java实现tcp的多客户端通信时,每个客户端只能通信一次

问题描述 java实现tcp的多客户端通信时,每个客户端只能通信一次 每个客户端与服务端只能通信一次,第二次通信就会抛出连接异常,求大神指导 解决方案 TCP多客户端通信实现java 客户端与c++服务器端tcp通信 demoTCP实现客户端和服务器的通信 解决方案二: 你可以在服务器端用一个HashMap来保存与客户端建立连接的socket 参考:http://blog.csdn.net/aiynmimi/article/details/47323165

vs2010-在VS2010中使用WinHttp和Java搭建的Web平台通信时出现问题

问题描述 在VS2010中使用WinHttp和Java搭建的Web平台通信时出现问题 在VS2010中通过WinHttp和Java搭建的Web平台通信时出现一个很怪异的问题:当我直接建立一个win32 console的工程时,进行通信没有问题,但当我把原来代码放在一个新建的头文件中时,然后将这个头文件添加入MFC工程,然后在所需要这个头文件的地方包含这个头文件,编译时出现了以下问题: 错误error C2371: "HTTP_VERSION_INFO": 重定义:不同的基类型 c:pr

dubbo源码分析系列(4)dubbo通信设计

1 系列目录 dubbo源码分析系列(1)扩展机制的实现 dubbo源码分析系列(2)服务的发布 dubbo源码分析系列(3)服务的引用 dubbo源码分析系列(4)dubbo通信设计 2 NIO通信层的抽象 目前dubbo已经集成的有netty.mina.grizzly.先来通过案例简单了解下netty.mina编程(grizzly没有了解过) 2.1 netty和mina的简单案例 netty原本是jboss开发的,后来单独出来了,所以会有两种版本就是org.jboss.netty和io.n

请问有谁知道windows系统共享内存映射方式通信时双方等待超时是什么原因

问题描述 请问有谁知道windows系统共享内存映射方式通信时双方等待超时是什么原因 //让服务器处理请求 if(!(::SetEvent(hExec))) { printf("发送请求失败!n"); bResult=false; return bResult; } //等待服务器处理完毕 long wait=::WaitForSingleObject(hDone, 5000); 解决方案 ::WaitForSingleObject(hDone, 5000); 等待5秒,(5000毫秒

java-JAVA多线程Socket通信时遇到的问题???

问题描述 JAVA多线程Socket通信时遇到的问题??? 实验过程中,服务器和客户端都能连接上了,但是服务器就是收不到客户端发来的字符串. 再贴一下代码: //Mult.java package t14_chapter; import java.io.*; import java.net.*; class Mult extends Thread{ private Socket socket; private BufferedReader in; private PrintWriter out;