use ggg
This commit is contained in:
parent
dd35c14a17
commit
60c039b7bf
@ -11,4 +11,6 @@ void init_con();
|
|||||||
void runtime_call();
|
void runtime_call();
|
||||||
void sync_client();
|
void sync_client();
|
||||||
int sync_get(char *);
|
int sync_get(char *);
|
||||||
|
void trans_client();
|
||||||
|
void trans_c_send();
|
||||||
|
void trans_c_get();
|
||||||
|
@ -10,10 +10,10 @@ void trans_client(){
|
|||||||
|
|
||||||
for(;a!='Q'&&a!='q';){
|
for(;a!='Q'&&a!='q';){
|
||||||
if(a=='S'||a=='s'){
|
if(a=='S'||a=='s'){
|
||||||
trans_c_send(name);
|
trans_c_send();
|
||||||
}
|
}
|
||||||
else if(a=='G'||a=='g'){
|
else if(a=='G'||a=='g'){
|
||||||
trans_c_get(name);
|
trans_c_get();
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("send or get or quit?[S/G/Q]\n");
|
printf("send or get or quit?[S/G/Q]\n");
|
||||||
@ -26,36 +26,53 @@ void trans_client(){
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void trans_c_send(char *name){
|
void trans_c_send(){
|
||||||
char *name;
|
char *name;
|
||||||
char *s;
|
char *s;
|
||||||
|
int num_name;
|
||||||
|
FILE *f;
|
||||||
|
int num_text=0;
|
||||||
|
char a;
|
||||||
|
char b;
|
||||||
|
|
||||||
name=(char *)malloc(sizeof(char)*128);
|
name=(char *)malloc(sizeof(char)*128);
|
||||||
s=(char *)malloc(1024*sizeof(char));
|
s=(char *)malloc(1024*sizeof(char));
|
||||||
int num_name;
|
|
||||||
memset(name,0,128*sizeof(char));
|
memset(name,0,128*sizeof(char));
|
||||||
|
memset(s,0,1024*sizeof(char));
|
||||||
printf("input the name of file:");
|
printf("input the name of file:");
|
||||||
scanf("%s",name);
|
scanf("%s",name);
|
||||||
num_name=strlen(name);
|
num_name=strlen(name);
|
||||||
send(sockad,name,num_name,0);
|
send(sockad,name,num_name,0);
|
||||||
|
|
||||||
FILE *f;
|
|
||||||
int num_text=0;
|
|
||||||
char a;
|
|
||||||
|
|
||||||
f=fopen(name,"r+");
|
f=fopen(name,"r+");
|
||||||
a=fgetc(f);
|
a=fgetc(f);
|
||||||
for(;a!=EOF;){
|
for(;a!=EOF;){
|
||||||
|
*(s+num_text)=a;
|
||||||
num_text++;
|
num_text++;
|
||||||
a=fgetc(f);
|
a=fgetc(f);
|
||||||
|
if(num_text==1024){
|
||||||
|
num_text=0;
|
||||||
|
b='a';
|
||||||
|
send(sockad,s,1024,0);
|
||||||
|
send(sockad,&b,1,0);
|
||||||
|
memset(s,0,1024*sizeof(char));
|
||||||
|
}
|
||||||
|
else if(a=EOF){
|
||||||
|
b='Q';
|
||||||
|
send(sockad,s,num_text,0);
|
||||||
|
send(sockad,&b,1,0);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
fclose(f);
|
fclose(f);
|
||||||
|
a='Q';
|
||||||
|
send(sockad,&a,1,0);
|
||||||
|
|
||||||
free(name);
|
free(name);
|
||||||
|
free(s);
|
||||||
|
|
||||||
}
|
}
|
||||||
void trans_c_get(char *name){
|
void trans_c_get(){
|
||||||
char *name;
|
char *name;
|
||||||
char *s;
|
char *s;
|
||||||
name=(char *)malloc(sizeof(char)*128);
|
name=(char *)malloc(sizeof(char)*128);
|
||||||
|
@ -14,3 +14,4 @@
|
|||||||
#include "func/init_con.c"
|
#include "func/init_con.c"
|
||||||
#include "func/runtime_call.c"
|
#include "func/runtime_call.c"
|
||||||
#include "func/sync_client.c"
|
#include "func/sync_client.c"
|
||||||
|
#include "func/trans_client.c"
|
||||||
|
3
client/text
Normal file
3
client/text
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
123456snfdnfsdf
|
||||||
|
sdfndnkjsdfsdf
|
||||||
|
sdfsdjfnsdf
|
@ -8,3 +8,6 @@ char s[3];
|
|||||||
void init_con();
|
void init_con();
|
||||||
void runtime_call();
|
void runtime_call();
|
||||||
void sync_server();
|
void sync_server();
|
||||||
|
void trans_server();
|
||||||
|
void trans_s_get();
|
||||||
|
void trans_s_send();
|
||||||
|
@ -16,12 +16,32 @@ void trans_server(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void trans_s_get(){
|
void trans_s_get(){
|
||||||
|
FILE *f;
|
||||||
char *name;
|
char *name;
|
||||||
|
char *s;
|
||||||
|
int i;
|
||||||
|
int num_s;
|
||||||
|
char a;
|
||||||
name=(char *)malloc(sizeof(char)*128);
|
name=(char *)malloc(sizeof(char)*128);
|
||||||
|
s=(char *)malloc(sizeof(char)*1024);
|
||||||
int num_name;
|
int num_name;
|
||||||
memset(name,0,128*sizeof(char));
|
memset(name,0,128*sizeof(char));
|
||||||
|
memset(s,0,1024*sizeof(char));
|
||||||
num_name=recv(sockad,name,128,0);
|
num_name=recv(sockad,name,128,0);
|
||||||
|
|
||||||
|
|
||||||
|
f=fopen(name,"w+");
|
||||||
|
|
||||||
|
for(;a!='Q'&&a!='q';){
|
||||||
|
num_s=recv(sockad,s,1024,0);
|
||||||
|
for(i=0;i<num_s;i++){
|
||||||
|
fputc(*(s+i),f);
|
||||||
|
}
|
||||||
|
memset(s,0,1024*sizeof(char));
|
||||||
|
recv(sockad,&a,1,0);
|
||||||
|
}
|
||||||
free(name);
|
free(name);
|
||||||
|
free(s);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,3 +14,4 @@
|
|||||||
#include "func/init_con.c"
|
#include "func/init_con.c"
|
||||||
#include "func/runtime_call.c"
|
#include "func/runtime_call.c"
|
||||||
#include "func/sync_server.c"
|
#include "func/sync_server.c"
|
||||||
|
#include "func/trans_server.c"
|
||||||
|
0
server/text
Normal file
0
server/text
Normal file
Loading…
Reference in New Issue
Block a user