> 웹 프론트엔드 > JS 튜토리얼 > ActiveXObject를 사용하여 JavaScript_javascript 기술로 로컬 폴더를 작동하는 방법

ActiveXObject를 사용하여 JavaScript_javascript 기술로 로컬 폴더를 작동하는 방법

WBOY
풀어 주다: 2016-05-16 16:54:00
원래의
969명이 탐색했습니다.

Windows 플랫폼에서 js는 Windows에서 제공하는 많은 ActivexObject를 호출할 수 있습니다. 이 기사에서는 js를 사용하여 문서 처리를 구현하고 js를 사용하여 ActiveX를 작성하는 방법을 간략하게 소개합니다.

코드 복사 코드는 다음과 같습니다.




<제목> 새 문서








JavaScript의 ActiveXObject 개체는 자동화 개체에 대한 참조를 활성화하고 반환합니다. 사용방법:

newObj = 새 ActiveXObject( 서버 이름.유형 이름[, 위치])

ActiveXObject 개체 구문은 다음과 같은 부분으로 구성됩니다. newObj가 필요합니다. ActiveXObject로 할당할 변수의 이름입니다.
서버 이름이 필요합니다. 이 객체를 제공한 애플리케이션의 이름입니다.
유형 이름이 필요합니다. 생성할 객체의 유형 또는 클래스입니다.
위치는 선택사항입니다. 이 객체를 생성한 네트워크 서버의 이름입니다.

기억하세요: ActiveX는 Microsoft 제품이므로 IE에서만 지원됩니다!

JavaScript에서 ActiveXObject를 사용하여 FileSystemObject 작업 파일 생성

1. 기능 구현 핵심: FileSystemObject 객체

JavaScript에서 파일 작업 기능을 구현하기 위해 주로 FileSystem객체 개체에 의존합니다.

2. FileSystemObject 프로그래밍

FileSystemObject 객체를 사용한 프로그래밍은 일반적으로 FileSystemObject 객체 생성, 관련 메서드 적용, 객체 관련 속성 액세스 단계를 거쳐야 합니다.

(1) FileSystemObject 객체 생성

FileSystemObject 개체를 생성하는 코드는 한 줄만 사용합니다.
var fso = new ActiveXObject("Scripting.FileSystemObject");
위 코드가 실행된 후 fso는 FileSystemObject 개체 인스턴스가 됩니다.

(2) 신청 관련 방법

객체 인스턴스를 생성한 후 객체와 관련된 메소드를 사용할 수 있습니다. 예를 들어 CreateTextFile 메서드를 사용하여 텍스트 파일을 만듭니다.
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f1 = fso.createtextfile("c:\myjstest.txt",true" );
(3) 개체 관련 속성 액세스
개체 관련 속성에 액세스하려면 먼저 개체에 대한 핸들을 설정해야 하며, 이는 get 일련의 메서드를 통해 달성됩니다. GetDrive는 드라이브 정보를 가져오는 역할을 담당합니다. , GetFolder는 폴더 정보 획득을 담당하고 GetFile은 파일 정보 획득을 담당합니다. 예를 들어 다음 코드를 가리킨 후 f1은 파일 c:test.txt를 가리키는 핸들이 됩니다.
var fso = new ActiveXObject(" Scripting.FileSystemObject");
var f1 = fso.GetFile("c:\myjstest.txt");
그런 다음 f1을 사용하여 개체의 관련 속성에 액세스합니다. 예:

.

코드 복사 코드는 다음과 같습니다.

var fso = new ActiveXObject("Scripting. FileSystemObject") ;
var f1 = fso.GetFile("c:\myjstest.txt");
alert("마지막으로 수정된 파일: " f1.DateLastModified);

위 마지막 문장을 실행하면 c:myjstest.txt의 마지막 수정 날짜 속성 값이 표시됩니다.
그러나 한 가지 주의할 점은 create 메소드를 사용하여 생성된 객체의 경우 객체 핸들을 얻기 위해 더 이상 get 메소드를 사용할 필요가 없다는 것입니다. 이 경우 create 메소드로 생성된 핸들 이름을 직접 사용할 수 있습니다. 🎜>

코드 복사 코드는 다음과 같습니다.
var fso = new ActiveXObject("Scripting. FileSystemObject") ;
var f1 = fso.createtextfile("c:\myjstest.txt",true");
alert("마지막으로 수정된 파일: " f1.DateLastModified);

3. 드라이브 작동

FileSystemObject 개체를 사용하면 폴더 복사, 이동, 폴더 정보 가져오기 등 Windows 파일 브라우저에서 파일과 상호 작용하는 것처럼 프로그래밍 방식으로 드라이브와 폴더를 쉽게 조작할 수 있습니다.

(1) 드라이브 개체 속성
드라이브 개체는 시스템의 물리적 또는 논리적 드라이브 리소스 콘텐츠를 수집하는 역할을 합니다.
l TotalSize: 바이트 단위로 계산된 드라이브 크기입니다.
l AvailableSpace 또는 FreeSpace: 바이트 단위로 계산된 드라이브의 사용 가능한 공간입니다.
l DriveLetter: 드라이브 문자입니다.
l DriveType: 드라이브 유형, 값은 이동식(이동식 미디어), 고정(고정 미디어), 네트워크(네트워크 리소스), CD-ROM 또는 RAM 디스크입니다.
l SerialNumber: 드라이브의 일련 번호입니다.
l FileSystem: 드라이브의 파일 시스템 유형, 값은 FAT, FAT32 및 NTFS입니다.
l IsReady: 드라이브를 사용할 수 있는지 여부입니다.
l ShareName: 공유 이름입니다.
l VolumeName: 볼륨 레이블 이름입니다.
l 경로 및 루트폴더: 드라이브의 경로 또는 루트 디렉터리 이름입니다.

(2) 드라이브 객체 동작 루틴

다음 루틴은 C 드라이브의 볼륨 레이블, 총 용량 및 사용 가능한 공간과 같은 정보를 표시합니다.


코드 복사 코드는 다음과 같습니다.
var fso, drv, s ="";
fso = new ActiveXObject("Scripting.FileSystemObject");
drv = fso.GetDrive(fso .GetDriveName("c :\"));
s = "C 드라이브:" " – ";
s = drv.VolumeName "n";
s = "총 공간: " drv.TotalSize / 1024;
s = " Kb" "n";
s = "여유 공간: " drv.FreeSpace / 1024;
s = " Kb" "n";
경고 ;

4. 작업 폴더(폴더)

폴더와 관련된 작업에는 관련 속성 생성, 이동, 삭제 및 가져오기가 포함됩니다.
폴더 개체 작업 루틴:
다음 루틴은 상위 폴더 이름 가져오기, 폴더 생성, 폴더 삭제, 루트 디렉터리인지 확인 등의 작업을 연습합니다.

코드 복사 코드는 다음과 같습니다.

var fso, fldr, s = "" ;
// FileSystemObject 개체 인스턴스 만들기
fso = new ActiveXObject("Scripting.FileSystemObject");
// 드라이브 개체 가져오기
fldr = fso.GetFolder("c:\");
/ / 상위 디렉터리 이름 표시
alert("상위 폴더 이름: " fldr "n")
// 드라이브 이름 표시
alert("드라이브에 포함됨 " fldr.Drive "n");
// 루트 디렉터리인지 확인
if (fldr.IsRootFolder)
alert("루트 폴더입니다.");
else
alert("이 폴더는 루트 폴더가 아닙니다.");
alert("nn");
// 새 폴더를 생성하세요
fso.CreateFolder ("C:\Bogus");
alert("생성된 폴더 C: \Bogus" "n");
//경로 이름을 제외한 폴더 기본 이름 표시
alert("Basename = " fso.GetBaseName("c:\ bogus") "n");
// 생성된 폴더 삭제
fso.DeleteFolder ("C:\Bogus");
alert("삭제된 폴더 C:\Bogus" "n");

5. 작업 파일(Files)

파일에 대한 작업은 위에서 소개한 드라이브 및 폴더 작업보다 더 복잡합니다. 기본적으로 파일 생성, 복사, 이동, 삭제 작업과 파일 생성, 추가, 삭제 및 읽기 작업으로 구분됩니다. 운영. 아래에서 각각에 대해 자세히 소개합니다.
(1) 파일 만들기
빈 텍스트 파일을 만드는 데 사용할 수 있는 3가지 방법이 있습니다. 이러한 종류의 파일을 텍스트 스트림이라고도 합니다.
첫 번째는 CreateTextFile 메서드를 사용하는 것입니다. 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

var fso, f1;
fso = new ActiveXObject ("Scripting.FileSystemObject");
f1 = fso.CreateTextFile("c:\testfile.txt", true);

두 번째는 OpenTextFile 메서드를 사용하고 ForWriting 속성을 추가하는 것입니다. 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

var fso, ts;
var ForWriting= 2 ;
fso = new ActiveXObject("Scripting.FileSystemObject");
ts = fso.OpenTextFile("c:\test.txt", ForWriting, true);

세 번째 방법은 OpenAsTextStream 메서드를 사용하고 ForWriting 속성도 설정하는 것입니다.

코드 복사 코드는 다음과 같습니다.

var fso, f1, ts;
var ForWriting = 2;
fso = new ActiveXObject("Scripting.FileSystemObject");
fso.CreateTextFile("c:\test1.txt");
f1 = fso.GetFile("c: \test1.txt");
ts = f1.OpenAsTextStream(ForWriting, true);

(2) 파일에 데이터 추가

파일이 생성된 후 일반적으로 "파일 열기 -> 데이터 입력 -> 파일 닫기" 단계를 따라 파일에 데이터를 추가해야 합니다.
파일을 열려면 FileSystemObject 개체의 OpenTextFile 메서드 또는 File 개체의 OpenAsTextStream 메서드를 사용하세요.
데이터를 채우려면 TextStream 개체의 Write, WriteLine 또는 WriteBlankLines 메서드를 사용하세요. 데이터를 쓰는 동일한 기능에서 이 세 가지 방법의 차이점은 Write 메서드는 작성된 데이터 끝에 새 줄 바꿈을 추가하지 않고, WriteLine 메서드는 끝에 새 줄 바꿈을 추가하고, WriteBlankLines는 하나를 추가한다는 것입니다. 또는 공백이 더 많습니다.
파일을 닫으려면 TextStream 개체의 Close 메서드를 사용할 수 있습니다.

(3) 파일 생성 및 데이터 추가 루틴

다음 코드는 파일 생성, 데이터 추가 및 파일 닫기 단계를 결합합니다.

코드 복사 코드는 다음과 같습니다.

var fso, tf;
fso = new ActiveXObject ("Scripting.FileSystemObject");
// 새 파일 만들기
tf = fso.CreateTextFile("c:\testfile.txt", true);
// 데이터 입력 개행 문자 추가
tf.WriteLine("Testing 1, 2, 3.") ;
// 빈 줄 3개 추가
tf.WriteBlankLines(3) ;
// 한 줄 채우기 줄바꿈 없이
tf.Write ("테스트입니다.");
//파일 닫기
tf.Close();

(4) 파일 콘텐츠 읽기

텍스트 파일에서 데이터를 읽으려면 TextStream 개체의 Read, ReadLine 또는 ReadAll 메서드를 사용하세요. Read 메서드는 파일에서 지정된 수의 문자를 읽는 데 사용됩니다. ReadLine 메서드는 줄바꿈을 제외한 전체 줄을 읽고 ReadAll 메서드는 텍스트 파일의 전체 내용을 읽습니다. 읽은 내용은 표시 및 분석을 위해 문자열 변수에 저장됩니다. Read 또는 ReadLine 메서드를 사용하여 파일 내용을 읽을 때 일부 부분을 건너뛰려면 Skip 또는 SkipLine 메서드를 사용해야 합니다.
다음 코드는 파일을 열고 데이터를 채운 다음 데이터를 읽는 방법을 보여줍니다.

코드 복사 코드는 다음과 같습니다.

var fso, f1, ts, s;
var ForReading = 1;
fso = new ActiveXObject("Scripting.FileSystemObject");
// 파일 생성
f1 = fso.CreateTextFile("c:\testfile.txt", true) ;
// 데이터 한 줄 채우기
f1.WriteLine("Hello World");
f1.WriteBlankLines(1);
// 파일 닫기
f1.Close( );
// 파일 열기
ts = fso.OpenTextFile("c:\testfile.txt", ForReading);
// 파일의 한 줄을 문자열로 읽어옵니다.
s = ts.ReadLine();
// 문자열 정보 표시
alert("파일 내용 = '" s "'");
// 파일 닫기
ts.Close();

(5) 파일 이동, 복사, 삭제

위의 세 가지 파일 작업에 대해 JavaScript에는 두 가지 해당 메서드가 있습니다. File.Move 또는 FileSystemObject.MoveFile은 파일을 이동하는 데 사용되며 File.Copy 또는 FileSystemObject.CopyFile은 파일을 복사하는 데 사용됩니다. 파일을 삭제하려면.
다음 코드는 C 드라이브의 루트 디렉터리에 텍스트 파일을 만들고 일부 내용을 채운 다음 파일을 tmp 디렉터리로 이동하고 temp 디렉터리 아래에 파일 복사본을 만들고 마지막으로 이 두 파일을 삭제하는 방법을 보여줍니다. :

코드 복사 코드는 다음과 같습니다.

var fso, f1, f2 , s;
fso = new ActiveXObject("Scripting.FileSystemObject");
f1 = fso.CreateTextFile("c:\testfile.txt", true);
// 한 줄 쓰기
f1.Write("테스트입니다.");
// 파일 닫기
f1.Close();
// C: 루트 디렉터리에서 파일 핸들 가져오기
f2 = fso.GetFile("c:\testfile.txt");
// 파일을 mp 디렉터리로 이동
f2.Move ("c:\tmp\testfile.txt");
// 파일을 emp 디렉토리에 복사
f2.Copy ("c:\temp\testfile.txt");
// 파일 핸들 가져오기
f2 = fso.GetFile("c:\tmp\ testfile.txt");
f3 = fso.GetFile("c:\temp\testfile.txt");
//파일 삭제
f2.Delete();
f3.Delete( );

6. 결론

위의 소개와 FileSystemObject의 다양한 개체, 속성 및 메서드에 대한 예를 통해 JavaScript 언어를 사용하여 페이지의 드라이브, 파일 및 폴더를 작동하는 방법을 명확하게 이해했다고 믿습니다. 그러나 위에서 언급한 루틴은 매우 간단하며 JavaScript 파일 조작 기술을 완전하고 유연하게 익히려면 많은 실습이 필요합니다. 그리고 한 가지 더 알려드릴 점은, 브라우저에서 파일을 읽고 쓰는 등의 고급 작업이 포함되기 때문에 기본 브라우저 보안 수준의 경우 코드가 실행되기 전에 정보 프롬프트가 표시된다는 점입니다. 실제 환경에서 이를 확인하세요. 방문자에게 주의를 기울이도록 유도합니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿