| Fichiers & FileSystemObject |
Syntaxe / Exemples | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| FileSystemObject donne accès aux Supports/Répertoires/Fichiers |
var fso=new ActiveXObject("Scripting.FileSystemObject") | ||||||||||||||||||
| Créer un Fichier | var ts=fso.CreateTextFile("nom du fichier",ecraser,unicode); avec ecraser=true si écrasement préalable, false sinon | ||||||||||||||||||
| Supprimer un Fichier | var ts=fso.DeleteFile("nom du fichier"); | ||||||||||||||||||
| Tester si un Fichier existe | fso.FileExists("nom du fichier");
if (!fso.FileExists("nom du fichier"))
var ts=fso.CreateTextFile("nom du fichier"); | ||||||||||||||||||
| Déplacer un/des Fichiers | var ts=fso.MoveFile("Source","Destination"); | ||||||||||||||||||
| Copier un/des Fichiers | var ts=fso.CopyFile("Source","Destination",ecraser);
avec ecraser=true si écrasement préalable
false sinon | ||||||||||||||||||
| Informations sur un fichiers | var fich=fso.GetFile("fichier");
nom : fich.Path.toUpperCase()
date de création : fich.DateCreated
date dernier accés : fich.DateLastAccessed
date dernière modification : fich.DateLastModified
taille : fich.Size
|
| Fichiers & CLASSID |
Syntaxe / Exemples |
|---|---|
<OBJECT NAME="CD1" ID="CD1" VIEWASTEXT
CLASSID="CLSID:F9043C85-F6F2-101A-A3C9-08002B2F49FB">
<PARAM NAME="DialogTitle"
VALUE="Choix Fichier">
<PARAM NAME="FileName" VALUE="">
<PARAM NAME="Filter">
<PARAM NAME="FilterIndex" VALUE=1>
<PARAM NAME="InitDir" VALUE="C:\Mes Documents">
<PARAM NAME="Flags" VALUE=2630148>
< /OBJECT>
Flags en Héxa ( combinaisons possibles )
000001 case à cocher "Read Only" validée
000002 message si fichier existe
000004 case à cocher "Read Only"
000008 répertoire en cours = celui actif à
l'ouverture de la boite de dialogue
000010 bouton Aide
000100 caractères non valides autorisés
000200 multi-selections autorisés
000400 extansion renvoyée non= DefaultExt
000800 le nom chemin doit être valide
001000 doit exister
002000 message Créer ? si n'existe pas
004000 erreurs de violation de partage ignorés
008000 pas d'attributs Read Only
040000 pas de noms longs
080000 boite de dialoque style window 95
100000 pas de raccourcis
200000 noms longs |
**** recherche pour lire
CD1.Filter="Textes|*.txt;*.rtf|Sons|*.wav;*.MP3|Tous|*";
CD1.ShowOpen();
if (CD1.Filename.length>0)
{ // un fichier à été choisi ...
|
| Fichiers & WScript.Shell |
Syntaxe / Exemples |
|---|---|
| Mettre un Fichier à la corbeille |
Shl.NameSpace(0x11).ParseName(Fichier).InvokeVerb ("&Supprimer");
exemple :
//———————————————————————————————————————————————————————————————————————————
function Corbeille(Fichier) // © marcelBultez@Tiscali.fr Septembre 20005
//———————————————————————————————————————————————————————————————————————————
{
var Shl = new ActiveXObject("Shell.Application");
var ret="supprimé";
try
{ //#### tentative de mettre le fichier à la corbeille
Shl.NameSpace(0x11).ParseName(Fichier).InvokeVerb ("&Supprimer");
}
catch(erreur)
{ //#### une erreur s'est produite
if ( erreur.description.length == 0 )
{
ret="Fichier Inconnu";
}
else {
ret=erreur.description;
}
}
Shl=null;
return ret;
}
|
| Répertoires & FileSystemObject |
Syntaxe / Exemples |
|---|---|
| Répertoire initial | var url=unescape(self.location.pathname); var adr=(fso.GetExtensionName(url).toLowerCase()!='hta')?1:0; var dir=fso.GetParentFolderName(url).substr(adr); |
| Test si un Répertoire existe | fso.FolderExists("Répertoire") |
| Créer un Répertoire | fso.CreateFolder("Répertoire");
if (!fso.FolderExists("Répertoire")
fso.CreateFolder("Répertoire") |
| Supprimer un Répertoire | fso.DeleteFolder("Répertoire",forcer);
avec forcer=true si destrcution préalable des composants,
false sinon |
| Déplacer un Répertoire | fso.MoveFolder("Source","Destination"); |
| Copier un Répertoire | fso.CopyFolder("Source","Destination",ecraser);
avec ecraser=true si écrasement préalable
false sinon |
| Examen d'un Répertoire et des Sous-Répertoires |
//
function Aller(repertoire) // début d'un répertoire
//
{
f = fso.GetFolder(repertoire);
//
var f1 = new Enumerator(f.files); // les fichiers
//
for (; !f1.atEnd(); f1.moveNext())
{
alert(f1.item());
}
//
var f2=new Enumerator(f.subfolders); // les sous/répertoires
//
for (; !f2.atEnd(); f2.moveNext())
{
Aller(f2.item());
}
}
|
| Répertoire parent | GetParentFolderName(chemin);
alert (fso.GetParentFolderName("C:\\Mes Documents\\Exemples\\toto.txt");
va afficher c:\\Mes Documents\\ |
| Répertoires Spéciaux | fso.GetSpecialFolder(SystemFolder) fso.GetSpecialFolder(TemporaryFolder) fso.GetSpecialFolder(WindowsFolder) |
| caractéristiques Répertoires | c=fso.GetFolder("répertoire");
c.?
Attributes [= attribut] définit ou retourne les attributs
DateCreated date et heure de création
DateLastAccessed date et heure dernier accès
DateLastModified date et heure de la dernière modification
Drive lecteur sur lequel réside le dossier
Files collection de fichier contenus
IsRootFolder true si le dossier est le dossier racine.
Name [= nom] définit ou retourne le nom du dossier.
ParentFolder dossier parent
Path chemin d'accès
ShortName nom du dossier dans le format DOS 8.3.
ShortPath chemin du dossier dans le format DOS 8.3.
Size taille du dossier.
SubFolders collection de dossiers contenus
Type type de dossier |
| Répertoires & CLASSID |
Syntaxe / Exemples |
|---|---|
<OBJECT ID="CD2" name="CD2" VIEWASTEXT
CLASSID='clsid:13709620-C279-11CE-A49E-444553540000'>
<PARAM NAME="Title">
</OBJECT>
...
var dossier=CD2.BrowseForFolder
(0,Titre,Flags,Répertoire Initial);
Flags en Héxa ( combinaisons permises )
0001 limite aux vrais dossiers
0002 interdit d'explorer en dehors du domaine
0010 affiche une zone de texte
0020 vérifie la saisie dans la zone d'édition
1000 autorise à parcourir le réseau |
var dossier=CD2.BrowseForFolder
(0,"Choix Répertoire",0,"");
if (dossier) // répertoire choisi
{
var rep=dossier.Title;
if(/\((\w:)\)/i.exec(rep))
// c: ? ( par exemple )
{ rep=RegExp.$1; }
else
{ rep=dossier.ParentFolder.ParseName(rep).Path; }
...
} |
| Répertoires & WScript.Shell |
Syntaxe / Exemples |
|---|---|
| Répertoires système | var exc=new ActiveXObject("WScript.Shell");
var bureau=exc.SpecialFolders("Desktop");
var nomsp=new Array(
"AllUsersDesktop","AllUsersStartMenu",
"AllUsersPrograms","AllUsersStartup","Desktop",
"Favorites","Fonts","MyDocuments","NetHood",
"PrintHood","Programs","Recent","SendTo",
"StartMenu","Startup","Templates")
for ( i=0;i<nomsp.length;i++)
{
document.writeln(nomsp[i]+"="+
exc.SpecialFolders(nomsp[i])+"<br>");
}
|
| Choix d'un Répertoire | function RepertoireChoix()
{
var Shl = new ActiveXObject("Shell.Application");
return(Shl.BrowseForFolder(0, "Choix d'un Répertoire", 0).Items().Item().Path);
}
|
| Supports & FileSystemObject |
Syntaxe / Exemples |
|---|---|
| Test si un Support existe | fso.DriveExists("Support") |
| Supports Disponibles | fso.Drives
var fso=new ActiveXObject("Scripting.FileSystemObject");
f1 = new Enumerator(fso.Drives);
for (; !f1.atEnd(); f1.moveNext())
{
alert(f1.item());
} |
| support dans un chemin | var f=GetDrive(chemin);
alert (fso.GetDriveName("C:\\Mes Documents\\Exemples\\toto.txt");
va afficher c: |
| Informations | fso.Drives("C:").AvailableSpace Taille Maxi
DriveType Type de Support
FreeSpace Taille disponible
IsReady Support prêt ou non
RootFolder Racine
TotalSize Taille maxi
VolumeName Nom du Volume
|
| Divers FileSystemObject | Syntaxe / Exemples |
|---|---|
| ajouter un nom au chemin | fso.BuildPath(chemin,nom); |
| chemin d'accès complet | GetAbsolutePathName(chemin); |
window.location="view-source:http://fichier sur le serveur";
<html><body>
<b>exemple d'insertion d'un fichier texte<br/>
<object data="http://fichier sur le serveur"
type="text/plain"
width="800"
height="300"
ViewAsText></object>
<b>======================================<br/>
</body></html>
<script type="text/javascript">
var url = "http://marcel-bultez.chez.tiscali.fr";
var xmlHttp;
try { xmlHttp = new XMLHttpRequest(); }
catch (e) { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); }
xmlHttp.open("GET", url, false, "utilisateur", "pass");
xmlHttp.send();
alert(xmlHttp.responseText);
xmlHttp = null;
</script>
si c'est incomplet, s'il y a des erreurs, si vous voulez des éclaircissements, des explications ...~\\|// (@ -) •———oOOOo———(_)———oOOOo———————• | M'écrire : Mail Anti-Spam | | Mon Site | | .oooO Oooo. | •—————( )———( )———————————• \ ( ) / \_) (_/