Microsoft MVP성태의 닷넷 이야기
Http 파일 업로드시 한글파일명 관련 [링크 복사], [링크+제목 복사],
조회: 21309
글쓴 사람
로손
홈페이지
첨부 파일
 

안녕하세요. 한글이 포함된 파일을 Http 업로드 할 경우에 대해 여쭤봅니다.

웹페이지에서 전송하는 기능을 C#에서 동일하게 구현 하는데 한글 파일명인 경우 파일명이 깨집니다.

웹페이지에서 전송할 경우의 헤더 정보와 C#에서 보낸 헤더정보 비교(Fiddler)

1. 웹페이지 JSP form 전송시(정상)
POST http://10.155.8.76:8312/insa/FileUploadServlet HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Referer: http://10.155.8.76:8312/insa/test.jsp
Accept-Language: ko-KR
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
Content-Type: multipart/form-data; boundary=---------------------------7df3972e104c6
Accept-Encoding: gzip, deflate
Host: 10.155.8.76:8312
Content-Length: 47396
DNT: 1
Connection: Keep-Alive
Pragma: no-cache
Cookie: JSESSIONID=0000ioe7Tp1dCmT1TwqU_-4yvfI:-1

-----------------------------7df3972e104c6
Content-Disposition: form-data; name="upload"; filename="C:\Users\sjh\Desktop\Temp\data\2015.05_AP12345_김길동.tif"
Content-Type: image/tiff


2. C# 전송시(파일명 깨짐)
POST http://10.155.8.76:8312/insa/FileUploadServlet HTTP/1.1
Content-Type: multipart/form-data; boundary=----------5b8ba50b442e4e499532fa610596b7fa
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
Accept-Language: ko-KR
Host: 10.155.8.76:8312
Content-Length: 272601
Expect: 100-continue
Accept-Encoding: gzip, deflate
Connection: Keep-Alive

------------5b8ba50b442e4e499532fa610596b7fa
Content-Disposition: form-data; name="upload"; filename="D:\Project\amore\00.Debug\Data\Result\2015.05_AP12345_???.tif"
Content-Type: application/octet-stream


위 정보중 filename 부분에 웹에서 보낸 경우는 자동(?)으로 한글명이 변환 되는걸로 보입니다.(홍 ->&#44608 이런식으로..)

이부분에서 어떤 차이가 있는듯 한데...혹시 어떤 차이가 있을까요?










[최초 등록일: ]
[최종 수정일: 5/26/2015]


비밀번호

댓글 작성자
 



2015-05-26 11시19분
HttpUtility.UrlEncode를 하면 되지 않을까요?
정성태

... 31  32  33  34  35  36  37  38  39  40  [41]  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4858heyh...7/10/201717851Clickonce update에 관한질문입니다. [1]
4857heyh...7/7/201718552제가 여태까지 작성한 보고서입니다. [2]파일 다운로드1
4856heyh...7/6/201716642성태님 다른질문입니다. [4]
4855JP7/6/201716834Dispose 패턴 구현시 Finalize 재정의에 대한 질문드립니다. [2]
4854heyh...7/6/201716725
4853heyh...7/5/201716376성태님이 작성한대로 해봤습니다. [1]파일 다운로드1
4852김레오7/4/201719376서드파티 dll 디버깅에 대해 질문드립니다. [2]
4851김현준7/3/201719838Datagridview VirtualMode 시 GC가 계속 호출되는 현상이 이해가 안갑니다. [2]
4850heyh...7/3/201718261성태님 밑에 질문드렸던 오류입니다. [1]파일 다운로드1
4849포플러7/2/201740128C#으로 만든 프로그램이 어느 순간 속도가 느려지거나 멈춤현상이 있습니다. [4]
4848윤진영7/2/201720389Microsoft Visual C++ 6.0 무설치 관련 [1]
4847heyh...6/30/201718020아무리 고민해도 답이 안나와서.. 질문 드립니다 [1]
4846heyh...6/28/201717564Clickonce에서 Clickonce로 변수 전달 [1]
4845heyh...6/26/201717033vb.net 에서 manifest 제거 방법 [1]파일 다운로드1
4844san6/21/201716676part3 pdf파일로 보는데 눈아퍼요.... 활자로 보고싶어요 [2]
4843윤현수6/20/201715994socket통신에 관한 질문입니다. [1]
4842오세운6/7/201716959로그인폼 다시 질문드려요. [1]
4841popo6/7/201717407궁금한사항이 있어 질문 드립니다. [1]
4840윤현수6/5/201717215datagridview에 바인딩시킨 dataset.table에 관련된 질문입니다. [2]파일 다운로드1
4839오세운6/2/201718218로그인폼 만들기 [1]
4838후배5/29/201718994PDF Reader 라이브러리.. [3]
4837KDP5/29/201718606c++ to C# 컨버팅 문의 [2]
4836popo5/26/201721202리플렉션 성능 관련 질문 드립니다. [2]
4835guest5/25/201717207wpf Canvas 질문드립니다. [1]
4834부탁드립...5/19/201718274익스체인지 서버 구동중 인증서를 받는 과정에서오류가 납니다 [1]
4833안종윤5/18/201718495winform을 Web Browser에 붙일 수 있는지요? [1]
... 31  32  33  34  35  36  37  38  39  40  [41]  42  43  44  45  ...