导航:首页 > IDC知识 > c上传图片到服务器

c上传图片到服务器

发布时间:2020-11-05 07:37:28

1、如何将摄像头采集到的图片传送给服务器,再由服务器传送给客户端,c

图片都存来在服务器上源,cs程序端也是通过URL形式访问图片,如System.Net.WebClient类可以读取远程图片,本质上和BS结构一样,只不过BS结构是浏览器帮你实现读取远程图片这一步。当然,服务器端得架设一个web站点提供服务。

2、怎么用C实现Http POST功能向Http服务器上传文件

文件可以使用sendfile直接过去
比如刚开始是报文头部结束\r\n\r\n直接write就可以
然后文件数据可以直接sendfile处理,
也可以
#define BUFSIZE 8196
while(read(fd,buf,BUFSIZE)>0){
write(...);
}
CONTENT-LENGTH是报文头结束\r\n\r\n之后的字节总数

3、C#做c/s开发,是怎么读取远程主机的图像文件的?

图片都存在服务器上, cs程序端也是通过URL形式访问图片,如System.Net.WebClient类可以读内取远程图片, 本质上容和BS结构一样,只不过BS结构是浏览器帮你实现读取远程图片这一步。

当然,服务器端得架设一个web站点提供服务。

4、c#在c/s模式下如何发送文件到服务器?

多种
1:建立共享目录,直接copy进去。(不是很安全)
2:建立ftp,使用网络方法传送上去专。(也不是很安全属)
3:服务器运行Server端,本机使用WinSock使用TCP/IP传送过去(安全,但代码量高,服务器也需要运行程序)

等等吧,建议的方法是第三种,在服务器上建立一个服务,用来接收文件。

5、如何用socket 在客户端跟服务端之间传送图片 用C语言实现

没有C语言的 但是我可以说出思路
客户端将图片读取出来转为2进制,存到byte数组中发给服务端,服务端收到数组后,将2数组保存为图片格式的文件就可以了

6、C语言如何用FtpPutFile()函数上传文件到Ftp服务器!下载用FtpGetFile()可以!

C语言中没有FtpPutFile函数,这是VB中的函数。

C语言可以使用CStdioFile函数打开本地文件。使用类CInternetSession 创建并初始化一个Internet打开FTP服务器文件。

CStdioFile继承自CFile,一个CStdioFile 对象代表一个用运行时函数fopen 打开的C 运行时流式文件。
流式文件是被缓冲的,而且可以以文本方式(缺省)或二进制方式打开。文本方式提供对硬回车—换行符对的特殊处理。当你将一个换行符(0x0A)写入一个文本方式的CStdioFile 对象时,字节对(0x0D,0x0A)被发送给该文件。当你读一个文件时,字节对(0x0D,0x0A)被翻译为一个字节(0x0A)。
CStdioFile 不支持Duplicate,LockRange,和UnlockRange 这几个CFile 函数。如果在CStdioFile 中调用了这几个函数,将会出现CNoSupported 异常。
使用类CInternetSession 创建并初始化一个或多个同时的Internet 会话。如果需要,还可描述与代理服务器的连接。
如果Internet连接必须在应用过程中保持着,可创建一个类CWinApp的CInternetSession成员。一旦已建立起Internet 会话,就可调用OpenURL。CInternetSession会通过调用全局函数AfxParseURL来为分析映射URL。无论协议类型如何,CInternetSession 解释URL并管理它。它可处理由URL资源“file://”标志的本地文件的请求。如果传给它的名字是本地文件,OpenURL 将返回一个指向CStdioFile对象的指针。
如果使用OpenURL在Internet服务器上打开一个URL,你可从此处读取信息。如果要执行定位在服务器上的指定的服务(例如,HTTP,FTP或Gopher)行为,必须与此服务器建立适当的连接。

例程:

#include <winsock.h>
#include <stdio.h>
WORD wVersionRequested;
WSADATA wsaData;
char name[255]; //name里是本机名
CString ip; //本机IP
PHOSTENT hostinfo;
wVersionRequested = MAKEWORD( 1, 1 );
if ( WSAStartup( wVersionRequested, &wsaData ) == 0 )
{
if( gethostname ( name, sizeof(name)) == 0)
  {
if((hostinfo = gethostbyname(name)) != NULL)
{
ip = inet_ntoa (*(struct in_addr *)*hostinfo->h_addr_list);
}
}
WSACleanup( );
}  
// AfxMessageBox(name);//name里是本机名
// AfxMessageBox(ip); //ip中是本机IP
CStdioFile File;
File.Open("C://ip.txt",CFile::modeCreate|CFile::modeReadWrite);
//如果文件事先不存在的话,就需要CFile::modeCreate,否则就不需要。
File.WriteString(ip+":"+"8000");
File.Close();  //注意,这里一定要把文件关闭,否则不能成功上传
CString host="204.45.67.11";  
  CString user="19337";  
  CString password="1234567";  
  TRACE(":%s:%s:%s:%s/n", host,   
user, password, "C://ip.txt");  
  CInternetSession session  
(AfxGetApp()->m_pszAppName);  
  CFtpConnection* pConn = NULL;  
  pConn = session.GetFtpConnection (host,user,password);  
  if (pConn) {  
if (!pConn->PutFile("C://ip.txt","ip.txt"))
{  
MessageBox("传送文件失败??");  
} else {  
MessageBox("传送文件成功!");  
}  
pConn->Close();  
delete pConn;  
session.Close();  
  } else {  
MessageBox("Cannot Connect");  
  }

7、c/s下,上传的文件放在服务器好么?

cs模式,当然放服务器,不然Client2要下载Client1的文件,难道还要去连接Client1?
那不就变成点到点模式了

8、php负载均衡,服务器上传图片

又看到你了。
你理解错了吧,访问B服务器不一定上传就得上传到B服务器,图片服务器应该有自己的域名(img.xxx.com)用户访问的是B服务器做好的网站,但是使用上传时提交到的是A的域名。

9、C/S程序如何上传图片文件到服务器?

以文件形式保存在一个文件夹里,文件名用GUID方式命名

与c上传图片到服务器相关的知识