c# - 为什么我不能将字节数据发送到 Android Socket 应用程序,但它在 c# 中效果很好
问题描述
我使用套接字创建了一个 C# windows 程序。我可以将此字符串发送到我正在使用的控制板
socketObject.ReceiveBufferSize = 500;
socketObject.SendBufferSize = 500;
socketObject.Connect("10.10.100.254", 8899);
byte[] msg = Encoding.UTF8.GetBytes("admin" + "\r\n");
socketObject.Send(msg);
这在 Windows 应用程序中使用 C# 非常有效。但我正在移植到 Android 应用程序,但无法使其正常工作
Socket socket = new Socket();
socket.setReceiveBufferSize(5000);
socket.setSendBufferSize(5000);
socket.connect(new InetSocketAddress(InetAddress.getByName(sIP),iPort),1500);
mBufferOut = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())), true);
string message;
message = "admin" + "\\r\\n";
byte[] m = message.getBytes("UTF-8");
mBufferOut.println(m);
这不起作用,我被困住了!
解决方案
我终于弄明白了。我不确定它是否是最好的解决方案,但它有效!
char CR = (char) 0x0D;
char LF = (char) 0x0A;
String s = "admin" + CR + LF;
mTcpClient.sendMessage(s.getBytes(StandardCharsets.UTF_8));
推荐阅读
- javascript - 我如何验证html输入是否> 0并且不是字符串
- aop - LoggingAspect - WebServiceTemplate.marshalSendAndReceive
- regex - 在 while 函数的串行输出中搜索特定单词
- javascript - Mongoose/mongodb 如何查找和更新保存在另一个表中的对象/表
- javascript - 删除/隐藏网站上所有“文本装饰:直通”格式的元素?
- reactjs - 选择器 ":global .class" 不是纯的(纯选择器必须至少包含一个本地类或 id)
- css - 具有 position: relative 的元素不应该是正常文档流的一部分吗?
- python - 试图 += 元素到 python 中的自定义数组类将对象设置为无类型
- html - css 图像出现在文本和另一个图像上
- arrays - 在 Swift 中将原始字节数组转换为 Struct