C#“hello world”程序
新建一个控制台应用程序
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsolTest
{
class Program
{
private static int i;
static void Main(string[] args)
{
for (i = 0; i < 50; i++)
{
Console.Write("hello cqjtu!重交物联2018级\n");
}
Console.ReadLine();
}
}
}
具体代码如上,通过循环的方式进行换行输出50行,需要说明的是本人在运行程序的过程中遇到了窗口界面一闪而过的问题,经过查询资料,通过在代码末端添加一句“Console.ReafLine()”(等待输入)来解决,让命令行窗口停留在输出完成后的界面
最终输出效果如图
C#编写From窗口,完成输入发送的功能
在vs2015中新建一个窗体应用程序项目
在右侧工具栏中找到TextBox和Button,按照个人喜好的样式布局
在上方的显示界面中将Enabled设置为False,以此无法在显示界面输入
将显示界面的ScrollToleft设置为Vertical,这样显示界面便得以滑动显示
在窗口属性的AcceptButton中将button1勾选上,以此让button1得以运作
最终界面的成品如图
在资源项button1_Click的方法中键入以下代码
try
{
/*
* 显示当前时间
*/
string str = "The current time: ";
str += DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
textBox2.AppendText(str + Environment.NewLine);
/*
* 做好连接准备
*/
int port = 2000;
string host = "10.254.73.19";//填入需要送达的ip地址
IPAddress ip = IPAddress.Parse(host);
IPEndPoint ipe = new IPEndPoint(ip, port);//把ip和端口转化为IPEndPoint实例
Socket c = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);//创建一个Socket
/*
* 开始连接
*/
str = "Connect to server...";
textBox2.AppendText(str + Environment.NewLine);
c.Connect(ipe);//连接到服务器
/*
*发送消息
*/
string sendStr = textBox2.Text;
str = "The message content: " + sendStr;
textBox2.AppendText(str + Environment.NewLine);
byte[] bs = Encoding.UTF8.GetBytes(sendStr);
str = "Send the message to the server...";
textBox2.AppendText(str + Environment.NewLine);
c.Send(bs, bs.Length, 0);//发送信息
/*
* 接收服务器端的反馈信息
*/
string recvStr = "";
byte[] recvBytes = new byte[1024];
int bytes;
bytes = c.Receive(recvBytes, recvBytes.Length, 0);//从服务器端接受返回信息
recvStr += Encoding.UTF8.GetString(recvBytes, 0, bytes);
str = "The server feedback: " + recvStr;//显示服务器返回信息
textBox2.AppendText(str + Environment.NewLine);
/*
* 关闭socket
*/
c.Close();
}
catch (ArgumentNullException f)
{
string str = "ArgumentNullException: " + f.ToString();
textBox2.AppendText(str + Environment.NewLine);
}
catch (SocketException f)
{
string str = "ArgumentNullException: " + f.ToString();
textBox2.AppendText(str + Environment.NewLine);
}
textBox2.AppendText("" + Environment.NewLine);
textBox1.Text = "";
然后运行程序,简单的网络通信便可通过
WireShrak抓包分析
这里是通过wireshrak所抓取到了一个tcp协议的数据包
引用
抓包分析与简单网络通信引用自如下链接
https://blog.csdn.net/tyro_00/article/details/109400757
控制台创建C#程序引用自
https://blog.csdn.net/tyro_00/article/details/109400757
以上!