일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- foreground service
- Android
- vs code
- 문자열다루기
- C
- 콘솔 키보드 이벤트
- dictionary
- 딕셔너리
- 코틀린
- 진수변환기
- FTP
- UI
- 파일입출력
- 연결리스트
- InfluxDB
- Kotlin
- 메모리반환
- Mat 변수
- background service
- dart
- 문자열파싱
- socket
- 소켓프로그래밍
- Linked List
- 자료구조
- InfluxDBClient
- 문자열 다루기
- ws2_32.lib
- vscode
- flutter
- Today
- Total
목록socket (5)
무슨 일로 C 하셨습니까?
송신부가 디렉토리를 전송하면 반대쪽 수신부에서는 디렉토리 내용을 받아서 사용자가 원하는 파일을 선택할 수 있도록 UI로 구현해야한다. 디렉토리 내용을 전송하는 함수를 만들었고, 콘솔 창에서의 UI를 만들었으니 두가지 함수를 합쳐서 구현해보자. 우선 디렉토리에 포함된 파일을 UI에 그릴 수 있도록 문자열 형태로 변환시키는 함수를 만든다. char* File2String(filedata file_) { // [ ] n: | filename | extension | size char temp[100]; char* _extension = FileExtension(file_); sprintf(temp, "%2d: | %16.16s | %6s | %-d", file_.index, file_.name, _extens..
카카오톡으로 사진을 넘겨주듯 보내는 쪽에서 선택해서 파일을 넘겨주면 좋겠지만 받는 쪽에서 원하는 파일을 선택하게 만들고싶다. 그것도 한정된 몇개의 파일이 상대방 컴퓨터 내의 모든 파일을 대상으로 그것을 가능하도록 만들어보겠다. #include #include void f() { struct _finddata_t target; intptr_t handle; int result; handle = _findfirst("*.*", &target); if (handle == -1) return; while (1) { printf("%s[%d]\n", target.name,target.size); result = _findnext(handle, &target); if (result == -1) break; } _f..
FTP(File Transfer Protocol) 파일 전송 프로토콜에 맞게 우선은 파일 전송을 기능을 구현해보겠다. 네트워크를 통한 전송에 앞서 파일을 읽고 읽은 파일을 다시 기록하는 것 부터 시작해야겠다. void f() { FILE* from; FILE* to; char path[] = "C:\\Users\\OJJJ\\Desktop\\"; char filename[] = "lena.JPG"; char* target = StringAdd1(path, filename); char* target2 = StringAdd1(path, "copy.JPG"); fopen_s(&from, target, "rb"); fopen_s(&to, target2, "wb"); free(traget); free(target2..
소켓 프로그래밍을 통해 서버-클라이언트를 만들어보겠다. 서버와 클라이언트의 기본적인 TCP연결 및 메시지 보내기는 조금만 검색해보아도 금방 나오고, 내용 또한 금방 이해를 할 수 있다. void server() { WSADATA wsa; WSAStartup(0x0202, &wsa); SOCKET sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); SOCKADDR_IN serv; memset(&serv, 0, sizeof(serv)); serv.sin_addr.S_un.S_addr = INADDR_ANY; serv.sin_family = AF_INET; serv.sin_port = htons(9000); int serv_sz = sizeof(serv); if (bind..
여러 프로젝트를 진행하다보면 아니 그냥 살다보면 두 대 이상의 컴퓨터에 자료가 저장되어있는 경우가 존재하며 한 컴퓨터에 존재하는 자료를 다른 자료로 옮겨야 할 경우가 생긴다. USB나 외장하드, 카카오톡, 메일 등 다양한 방법으로 자료를 옮기고 공유할 수 있다. 그런데 공유 폴더를 생성할줄 모른다면 마땅한 usb 포트를 꽂기 귀찮다면 PC 카톡에 매번 로그인하기 귀찮다면 메일 등으로 옮기기에 파일 사이즈가 크다면 다양한 이유로 옮기기 힘든 이유가 생길 수 있다. 이것을 내 방식대로 프로그래밍 해서 해결해보겠다.