我试图从图库中选择图像,但我只找到了选择单个图像的方法.
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, 1);
Run Code Online (Sandbox Code Playgroud)
有没有办法选择多个图像?
A具有以下侦听器套接字:
int sd = socket(PF_INET, SOCK_STREAM, 0);
struct sockaddr_in addr;
bzero(&addr, sizeof(addr));
addr.sin_family = AF_INET;
addr.sin_port = htons(http_port);
addr.sin_addr.s_addr = INADDR_ANY;
if(bind(sd,(sockaddr*)&addr,sizeof(addr))!=0)
{
...
}
if (listen(sd, 16)!=0)
{
...
}
int sent = 0;
for(;;) {
int client = accept(sd, (sockaddr*)&addr, (socklen_t*)&size);
if (client > 0)
{
...
close(client);
}
}
Run Code Online (Sandbox Code Playgroud)
如果使用
close(sd);
Run Code Online (Sandbox Code Playgroud)
然后尝试使用相同的代码重新创建套接字,发生绑定错误,并且仅在30-60秒后成功创建新套接字.
有没有办法以一些很酷的方式创建或关闭以避免绑定错误?
-(IBAction)selectPressed:(id)sender
{
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentModalViewController:picker animated:YES];
[picker release];
}
Run Code Online (Sandbox Code Playgroud)
我正在iPad和iPhone模拟器上测试这段代码.在iPhone模拟器中(以及在真正的iPhone上)也没问题 - 画廊出现了.但是在iPad模拟器上(我没有设备),它崩溃了.有什么想法吗?
我试图在http响应中发送二进制文件(png图像).
FILE *file;
char *buffer;
int fileLen;
//Open file
file = fopen("1.png", "rb");
if (!file)
{
return;
}
//Get file length
fseek(file, 0, SEEK_END);
fileLen=ftell(file);
fseek(file, 0, SEEK_SET);
//Allocate memory
buffer=(char *)malloc(fileLen+1);
if (!buffer)
{
fprintf(stderr, "Memory error!");
fclose(file);
return;
}
//Read file contents into buffer
fread(buffer, fileLen, 1, file);
fclose(file);
//free(buffer);
char header[102400];
sprintf(header,
"HTTP/1.1 200 OK\n"
"Date: Thu, 19 Feb 2009 12:27:04 GMT\n"
"Server: Apache/2.2.3\n"
"Last-Modified: Wed, 18 Jun 2003 16:05:58 GMT\n"
"ETag: \"56d-9989200-1132c580\"\n"
"Content-Type: image/png\n"
"Content-Length: %i\n" …Run Code Online (Sandbox Code Playgroud) 我正在设置一个新的cookie
func f1(w http.ResponseWriter, r *http.Request) {
...
expire := time.Now().AddDate(0, 1, 0)
cookie := http.Cookie{"token", token, "/", "domain", expire, expire.Format(time.UnixDate), 86400, true, true, "token=" + token, []string{"token=" + token}}
http.SetCookie(w, &cookie)
Run Code Online (Sandbox Code Playgroud)
然后我想要得到它
func f2(w http.ResponseWriter, r *http.Request) {
...
cookie, err := r.Cookie("token")
fmt.Println(cookie.Value)
fmt.Println(cookie.Expires)
Run Code Online (Sandbox Code Playgroud)
产量
valid_token_string
0001-01-01 00:00:00 +0000 UTC
Run Code Online (Sandbox Code Playgroud)
值与我设置的相同,但Expires为空.为什么?
我试图使用socket发送二进制文件.
FILE *file;
char *file_data;
file = fopen(filepath, "rb");
//Allocate memory
file_data=(char *)malloc(fileLen+1);
//Read file contents into buffer
fread(file_data, fileLen, 1, file);
fclose(file);
sent = send(client, file_data, strlen(header)+fileLen, 0);
Run Code Online (Sandbox Code Playgroud)
它工作正常,但有些文件太大了,我想读取一部分缓冲区,发送它,然后读取第二部分,发送它等等.
我试图使用fread和fgets获取零件,但我失败了=(如何正确地做到这一点?
UPD:麻烦在于从客户端读取传入的请求.我没看过.如果我这样做,没有什么不好的事情
我在/ tmp/my_sock中有一个unix套接字
如何连接并写入数据?有Qt方法吗?
我正在尝试向浏览器发送HTTP响应
char *reply =
"HTTP/1.1 200 OK\n"
"Date: Thu, 19 Feb 2009 12:27:04 GMT\n"
"Server: Apache/2.2.3\n"
"Last-Modified: Wed, 18 Jun 2003 16:05:58 GMT\n"
"ETag: \"56d-9989200-1132c580\"\n"
"Content-Type: text/html\n"
"Content-Length: 15\n"
"Accept-Ranges: bytes\n"
"Connection: close\n"
"\n"
"sdfkjsdnbfkjbsf";
int sd = socket(PF_INET, SOCK_STREAM, 0);
struct sockaddr_in addr;
bzero(&addr, sizeof(addr));
addr.sin_family = AF_INET;
addr.sin_port = htons(8081);
addr.sin_addr.s_addr = INADDR_ANY;
if(bind(sd,&addr,sizeof(addr))!=0)
{
printf("bind error\n");
}
if (listen(sd, 16)!=0)
{
printf("listen error\n");
}
for(;;)
{
int size = sizeof(addr);
int client = accept(sd, &addr, &size);
if …Run Code Online (Sandbox Code Playgroud)