帮我把这段代码 java 改成 C# 本帖最后由 yanljun3 于 2009-09-05 13:06:41 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 太长了 - - java和c#语法差不太多的 plainText = password.getBytes("UTF8"); MessageDigest messageDigest = MessageDigest.getInstance("SHA-1"); messageDigest.update(plainText); String pass64 = ""; pass64 = new String(messageDigest.digest(), "UTF8"); pass64 = new sun.misc.BASE64Encoder().encode(pass64.getBytes("UTF8")); OutputStream os = s.getOutputStream(); InputStream is = s.getInputStream(); 和byte[] buf = new byte[100]; int len = is.read(buf); using System;using System.Collections.Generic;using System.Text;using System.IO; public partial class frmLogin : Form { public frmLogin() { InitializeComponent(); } public static void frmLogin_Load(object sender, EventArgs e) { String a = "用户名"; String b = "密码"; String c = "218.94.58.243"; int d = 9100; Login lo = new Login(); Console.WriteLine(lo.Enter(a, b, c, d)); } }public List Enter(String name, String password, String ipaddress, int port) { List listsms = new java.util.ArrayList(); byte[] plainText = null; if (name != null && password != null) { try { Socket s = new Socket(InetAddress.getByName(ipaddress), port); plainText = password.getBytes("UTF8"); MessageDigest messageDigest = MessageDigest.getInstance("SHA-1"); messageDigest.update(plainText); String pass64 = ""; pass64 = new String(messageDigest.digest(), "UTF8"); pass64 = new sun.misc.BASE64Encoder().encode(pass64.getBytes("UTF8")); OutputStream os = s.getOutputStream(); InputStream is = s.getInputStream(); os.write(("0" + ";;;" + name + ";;;" + pass64 + "\n").getBytes()); while (true) { byte[] buf = new byte[100]; int len = is.read(buf); String aa = new String(buf, 0, 4, "UTF8"); if (aa.equals("1000")) { Console.WriteLine("登陆成功"); break; } String bb = new String(buf, 0, 5, "UTF8"); if (bb.equals("-1000")) { Console.WriteLine("登陆失败"); break; } System.out.println(new String(buf, 0, len, "UTF8")); } // os.write(("Hello!"+"\n").getBytes()); os.write(("querysms" + "\n").getBytes()); int exitflag = 0; int smsno = 0; //用于记录短信条数 while (true) { byte[] buf1 = new byte[300]; int len = is.read(buf1); System.out.println(new String(buf1, 0, len, "UTF8")); // System.out.println("lenth=" + len); int smsprop = 0; //用于记录短信属性:0--发送方号码 1--接受方号码 2---时间 if (len > 60) { int tmp = 0; Smsproperty sms = new Smsproperty(); for (int i = 0; i < len; i++) { String sendphone = new String(buf1, i, 3, "UTF8"); if (sendphone.equals(";;;")) { String context = new String(buf1, tmp, i - tmp, "UTF8"); // System.out.println("i="+i); switch (smsprop % 3) { case 0: sms.setSendphone(context); System.out.println(sms.getSendphone()); break; case 1: sms.setRecePhone(context); System.out.println(sms.getRecePhone()); break; case 2: sms.setSendtime(context); System.out.println(sms.getSendtime()); break; default: break; } tmp = i + 3; smsprop++; } if (sendphone.equals("|||")) { sms.setSendcontext(new String(buf1, tmp, i - tmp, "UTF8")); System.out.println(sms.getSendcontext()); listsms.add(sms.getSendphone()); listsms.add(sms.getRecePhone()); listsms.add(sms.getSendtime()); listsms.add(sms.getSendcontext()); tmp = 0; smsno++; smsprop = 0; } } } for (int i = 0; i < len - 5; i++) { String totalno = new String(buf1, i, 5, "UTF8"); if (totalno.equals("total")) { System.out.println(" total is" + new String(buf1, i + 6, 3, "UTF8")); exitflag = 1; } } if (exitflag == 1) break; } } catch (Exception e) { e.printStackTrace(); } } Console.WriteLine(listsms.size()); Console.WriteLine(listsms); return listsms; } } s.getOutputStream(); s.getInputStream(); 对于 C# 的 是什么方法 用户控件实现页面的切换 用Graphics绘制文字第一个比其他字突出 怎样获取值? 菜鸟提问:C#连接问题 !!又出问题了!!在ASP.NET里面用html的“Input(password)”密码框…… 欢迎讨论,大家在作OO设计时,如何表示对象集合的? 【求教】应用程序里面的.dat .bin之类的资源文件 求助:各位老师,谁有AgileFramework的学习资料啊 在datagrid中有没有属性可以禁止网格排序操作? 请问如何获得网络上行和下行的速度? C#连接mysql问题... richTextBoxTest.LoadFile(@".\Example.rtf");菜鸟
MessageDigest messageDigest = MessageDigest.getInstance("SHA-1");
messageDigest.update(plainText);
String pass64 = "";
pass64 = new String(messageDigest.digest(), "UTF8");
pass64 = new sun.misc.BASE64Encoder().encode(pass64.getBytes("UTF8"));
OutputStream os = s.getOutputStream();
InputStream is = s.getInputStream(); 和
byte[] buf = new byte[100];
int len = is.read(buf);
using System.Collections.Generic;
using System.Text;
using System.IO; public partial class frmLogin : Form
{
public frmLogin()
{
InitializeComponent(); }
public static void frmLogin_Load(object sender, EventArgs e)
{
String a = "用户名";
String b = "密码";
String c = "218.94.58.243";
int d = 9100;
Login lo = new Login(); Console.WriteLine(lo.Enter(a, b, c, d));
}
}public List Enter(String name, String password, String ipaddress, int port)
{ List listsms = new java.util.ArrayList(); byte[] plainText = null;
if (name != null && password != null)
{
try
{
Socket s = new Socket(InetAddress.getByName(ipaddress), port); plainText = password.getBytes("UTF8");
MessageDigest messageDigest = MessageDigest.getInstance("SHA-1");
messageDigest.update(plainText);
String pass64 = "";
pass64 = new String(messageDigest.digest(), "UTF8");
pass64 = new sun.misc.BASE64Encoder().encode(pass64.getBytes("UTF8"));
OutputStream os = s.getOutputStream();
InputStream is = s.getInputStream();
os.write(("0" + ";;;" + name + ";;;" + pass64 + "\n").getBytes()); while (true)
{
byte[] buf = new byte[100];
int len = is.read(buf); String aa = new String(buf, 0, 4, "UTF8");
if (aa.equals("1000"))
{
Console.WriteLine("登陆成功");
break;
}
String bb = new String(buf, 0, 5, "UTF8"); if (bb.equals("-1000"))
{
Console.WriteLine("登陆失败");
break;
}
System.out.println(new String(buf, 0, len, "UTF8")); }
// os.write(("Hello!"+"\n").getBytes());
os.write(("querysms" + "\n").getBytes()); int exitflag = 0;
int smsno = 0; //用于记录短信条数 while (true)
{
byte[] buf1 = new byte[300];
int len = is.read(buf1);
System.out.println(new String(buf1, 0, len, "UTF8"));
//
System.out.println("lenth=" + len);
int smsprop = 0; //用于记录短信属性:0--发送方号码 1--接受方号码 2---时间
if (len > 60)
{
int tmp = 0;
Smsproperty sms = new Smsproperty();
for (int i = 0; i < len; i++)
{
String sendphone = new String(buf1, i, 3, "UTF8");
if (sendphone.equals(";;;"))
{
String context = new String(buf1, tmp, i - tmp, "UTF8");
// System.out.println("i="+i); switch (smsprop % 3)
{
case 0:
sms.setSendphone(context);
System.out.println(sms.getSendphone());
break;
case 1:
sms.setRecePhone(context);
System.out.println(sms.getRecePhone());
break;
case 2:
sms.setSendtime(context);
System.out.println(sms.getSendtime());
break;
default:
break;
}
tmp = i + 3;
smsprop++;
}
if (sendphone.equals("|||"))
{
sms.setSendcontext(new String(buf1, tmp, i - tmp, "UTF8"));
System.out.println(sms.getSendcontext());
listsms.add(sms.getSendphone());
listsms.add(sms.getRecePhone());
listsms.add(sms.getSendtime());
listsms.add(sms.getSendcontext());
tmp = 0;
smsno++;
smsprop = 0; } } }
for (int i = 0; i < len - 5; i++)
{
String totalno = new String(buf1, i, 5, "UTF8"); if (totalno.equals("total"))
{ System.out.println(" total is" + new String(buf1, i + 6, 3, "UTF8"));
exitflag = 1;
}
}
if (exitflag == 1) break; } }
catch (Exception e)
{ e.printStackTrace(); }
}
Console.WriteLine(listsms.size());
Console.WriteLine(listsms);
return listsms; } }
s.getInputStream(); 对于
C# 的 是什么方法