【文件属性】:
文件名称:手机wifi传文件的一简单代码
文件大小:387KB
文件格式:RAR
更新时间:2013-12-16 13:56:03
wifi 手机 socket 传文件
手机wifi传文件的一简单代码
手机与笔记本传文件的方法有很多种,如果不方便使用蓝牙,数据线,读卡器时,可以考虑下wifi。
开发环境 vs2008 wm6 .net cf 3.5
步骤
1.手机先建立一个wifi网络 ssid随便写一个就ok 选中设备到设备 在填写个ip地址,跟子网掩码跟笔记本一个网段就行了
2.vs写个Server段程序,服务端负责接受客户端传过来的文件名,跟文件数据
接收文件名的代码如下
TcpListener server = new TcpListener(3389);
server.Start();
while (true)
{
TcpClient client = server.AcceptTcpClient();
Stream ns = client.GetStream();
StreamReader sr = new StreamReader(ns);
string content = sr.ReadLine();
Console.Write(content);
sr.Close();
ns.Close();
client.Close();
}
接收文件数据的代码类似
#region 传文件代码
TcpListener _server = new TcpListener(3399);
_server.Start();
//while (true)
{
TcpClient _client = _server.AcceptTcpClient();
Stream _ns = _client.GetStream();
Stream _fs = new FileStream(content, FileMode.Create, FileAccess.Write);
int _count = 1024;
byte[] _bytes = new byte[_count];
while (_count != 0)
{
_count = _ns.Read(_bytes, 0, _count);
_fs.Write(_bytes, 0, _count);
}
_fs.Close();
_ns.Close();
_client.Close();
}
#endregion
3.再用vs新建个只能设备程序 作为Client端 负责发送文件名,跟文件数据
发送文件名代码
string url = "f:\\sun_java_me_sdk-3_0-win.exe";
string fileName = url.Substring(url.LastIndexOf('\\')+1);
TcpClient client = new TcpClient();
client.Connect("192.168.1.168", 3389);
Stream ns = client.GetStream();
StreamWriter sw = new StreamWriter(ns);
sw.WriteLine(fileName);
sw.Close();
ns.Close();
client.Close();
发送文件数据代码
#region 传文件
TcpClient _client = new TcpClient();
_client.Connect("192.168.1.168", 3399);
int _count = 1024;
byte[] _bytes = new byte[_count];
Stream _ns = _client.GetStream();
Stream _fs = new FileStream(url, FileMode.Open, FileAccess.Read);
while (_count != 0)
{
_count = _fs.Read(_bytes, 0, _count);
_ns.Write(_bytes, 0, _count);
}
_fs.Close();
_ns.Close();
_client.Close();
#endregion
如果你发现有什么不合理的,需要改进的地方,联系328452421@qq.com 朱晓 。相互交流 谢谢
【文件预览】:
Client
----bin()
--------Debug()
----obj()
--------Debug()
----Properties()
--------AssemblyInfo.cs(1KB)
----Program.cs(1KB)
----Client.csproj(2KB)
Server.sln
Server
----Server.csproj(2KB)
----bin()
--------Debug()
----obj()
--------Debug()
----Properties()
--------AssemblyInfo.cs(1KB)
----Program.cs(2KB)
PhoneClient
----Form1.cs(2KB)
----bin()
--------Debug()
----PhoneClient.csproj.user(198B)
----obj()
--------Debug()
----Properties()
--------Resources.Designer.cs(2KB)
--------Resources.resx(5KB)
--------AssemblyInfo.cs(1KB)
----Program.cs(376B)
----Form1.Designer.cs(2KB)
----PhoneClient.csproj(4KB)
----Form1.resx(6KB)
网友评论
- 表示没看懂……
- 非常有用谢谢