感谢您抽出宝贵时间来查看我的问题!这是我的第一篇文章,所以请原谅我,如果我做错了论坛的话:)
编辑:我似乎解决了我的问题。我只是一次读取TCP流1行,并从那里使用if语句来确定读取开始和停止点。
更新代码:
using System;
using System.Net.Sockets;
using System.Net;
using System.IO;
using System.Threading;
using System.Text;
using System.Xml;
namespace RFLY_CMD
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Starting...");
TcpListener server = new TcpListener(IPAddress.Parse("127.0.0.1"), 7362);
server.Start();
Console.WriteLine("Started.");
while (true)
{
ClientWorking cw = new ClientWorking(server.AcceptTcpClient());
new Thread(new ThreadStart(cw.DoSomethingWithClient)).Start();
}
}
}
class ClientWorking
{
private Stream ClientStream;
private TcpClient Client;
public ClientWorking(TcpClient Client)
{
this.Client = Client;
ClientStream = Client.GetStream();
}
public void DoSomethingWithClient()
{
StreamWriter sw = new StreamWriter(ClientStream);
StreamReader sr = new StreamReader(sw.BaseStream);
string data;
try
{
while (true)
{
data = sr.ReadToEnd();
if (!string.IsNullOrEmpty(data) && !string.IsNullOrWhiteSpace(data))
{
//Console.Clear();
Console.WriteLine(data);
//Console.WriteLine("---------------");
}
sr.DiscardBufferedData();
}
}
finally
{
Console.Write("Ending...");
sw.Close();
}
}
}
Working Screenshot
结束编辑。
好的,这就是问题所在......我有一个像这样发送XML的应用程序:
但是,我只需要这里显示的红色框中的文字字符串:
这是我第一次处理XML,我对TCP有一点经验。除此之外,我在我的头上。 提前谢谢!
这是我的代码:
reduce
}