엑셀이나 텍스트 파일을 이용하여 DB에 업로드할일이 생기는 경우.

그중에 텍스트 파일을 이용했던 방법임.

fullpath 는 파일의 절대경로와 파일명까지를 변수에 담은것이라고 가정
텍스트 파일은 첫번째열부터 바로 자료이며 자료의 필드간 구분은 Tab으로 구분되어있는 경우에 해당

자료의 예시
이정규(tab)경기도 부천시 원미구(tab)070-4756-6020
홍길동(tab)서울시 구로구 구로동(tab)02-2082-1111
.....

'FSO
Set fso = Server.CreateObject("Scripting.FileSystemObject")
'1번째줄부터 파일을 오픈한다
set obj_txt = fso.OpenTextFile(fullpath, 1)

Do While Not obj_txt.AtEndOfStream
 TempLineData = split(obj_txt.ReadLine,vbTab)

 이름 = trim(TempLineData(0))
 주소 = trim(TempLineData(1))
 연락처 = trim(TempLineData(2)

i = i + 1
Loop
obj_txt.Close
set fso = nothing
set obj_txt = nothing

엑셀로 업로드할 경우에도 많은 방법이 있지만 주의해야할점이 한개의 필드에는 1개의 자료형만 존재해야
원활하게 DB혹은 웹으로 가져올 수 있다는점때문에 엑셀로 저장된 데이터를 번거롭지만 텍스트로 변환하여
업로드하는 방법을 사용해 보았음.

크리에이티브 커먼즈 라이센스
Creative Commons License
이 글의 관련글

Posted by web20korea

2007/10/15 15:23 2007/10/15 15:23

FSO : FileSystemObject

FileSystemObject(흔히 FSO라고 부름)는 웹 서버의 파일 시스템에 접근할 때 흔히 사용되는 콤포넌트이다. 예를 들어, 파일을 만들 수도 있고, 파일의 내용을 읽을 수도 있고, 폴더나 파일의 존재 여부도 알아낼 수 있다. 이 외에도 파일 시스템과 관련된 많은 일들을 이 개체를 통해 할 수 있다. ASP 페이지에서 FileSystemObject 개체의 인스턴스를 만들려면 아래와 같이 해주면 된다:

Dim objFSO
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

일단 이 개체의 인스턴스를 만들면 이 개체의 많은 메소드와 속성을 이용할 수 있게 된다. 예를 들어 C:\SomeFile.txt의 파일 내용을 출력하길 원한다고 하자. 간단하다. 다음과 같이 해주면 된다.:

Const fsoForReading = 1
 
Dim objFSO
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
 
'텍스트 파일을 연다
Dim objTextStream
Set objTextStream = objFSO.OpenTextFile("C:\SomeFile.txt", fsoForReading)
 
'텍스트 파일의 내용을 출력한다
Response.Write objTextStream.ReadAll
 
'파일을 닫는다
objTextStream.Close
Set objTextStream = Nothing
Set objFSO = Nothing

다음 장에서 텍스트 파일을 읽는 것과 관련된 더 자세한 내용을 다룰 것이다. 여기서는 FileSystemObject의 용도를 아는 것으로 만족하자. ASP 페이지는 웹 서버 상에 존재하므로 ASP 페이지 상에서 생성된 FSO 개체는 웹 서버의 파일 시스템에 접근하게 된다. (물론 FSO는 웹 서버에만 접근할 수 있는 것이 아니라 모든 물리적인 파일 시스템에 접근할 수 있다.) 하지만 FSO 개체를 이용해 클라이언트의 파일 시스템을 접근할 수는 없다.

FileSystemObject를 사용할 때 기억해야 할 중요한 것 한 가지는 "권한"부분이다. 윈도 NT에서는 3가지의 권한이 있다: Read, Write 및 Full Access. ASP 페이지가 FSO 개체를 이용해 파일 시스템의 명령을 사용하고자 할 때 익명(anonymous)의 사용자 ID (IUSR_machinename, 만일 웹 서버 이름이 daniel이라면 IUSR_daniel)가 사용된다. 만일 IUSR_machinename이 특정 디렉토리 접근 권한이 없다면 ASP 페이지를 통해 그 디렉토리에 파일을 쓰기 위해 FSO 개체를 이용할 수 없다.

크리에이티브 커먼즈 라이센스
Creative Commons License
이 글의 관련글

Posted by web20korea

2007/10/15 15:16 2007/10/15 15:16


블로그 이미지

남들 DSLR로 블로깅할때... 오로지 폰카로 버티는 즈질 블로거 ㅋ

- web20korea

Site Stats

Total hits:
44309
Today:
54
Yesterday:
261