Informations
Le sujet que vous avez demandé est indiqué ci-dessous. Toutefois, ce sujet ne figure pas dans la bibliothèque.

FileStream.CanWrite, propriété

Obtient une valeur indiquant si le flux actuel prend l'écriture en charge.

Espace de noms : System.IO
Assembly : mscorlib (dans mscorlib.dll)

public override bool CanWrite { get; }
/** @property */
public boolean get_CanWrite ()

public override function get CanWrite () : boolean

Valeur de la propriété

true si le flux prend en charge l'écriture ; false si le flux est fermé ou a été ouvert avec un accès en lecture seule.

Si une classe dérivée de Stream ne prend pas en charge l'écriture, un appel à SetLength, Write, BeginWrite ou à WriteByte lève NotSupportedException.

Si le flux est fermé, cette propriété retourne false.

L'exemple suivant utilise la propriété CanWrite pour vérifier si un flux prend en charge l'écriture.

using System;
using System.IO;
using System.Text;

class Test 
{
	
    public static void Main() 
    {
        string path = @"c:\temp\MyTest.txt";

        // Ensure that the file is readonly.
        File.SetAttributes(path, File.GetAttributes(path) | FileAttributes.ReadOnly);

        //Create the file.
        using (FileStream fs = new FileStream (path, FileMode.OpenOrCreate, FileAccess.Read)) 
        {
            if (fs.CanWrite) 
            {
                Console.WriteLine("The stream for file {0} is writable.", path);
            } 
            else 
            {
                Console.WriteLine("The stream for file {0} is not writable.", path);
            }
        }
    }
}

import System.*;
import System.IO.*;
import System.Text.*;

class Test
{
    public static void main(String[] args)
    {
        String path = "c:\\temp\\MyTest.txt";

        // Ensure that the file is readonly.
        File.SetAttributes(path, File.GetAttributes(path) | FileAttributes.
            ReadOnly);

        //Create the file.
        FileStream fs = new FileStream(path, FileMode.OpenOrCreate, 
            FileAccess.Read);
        try {
            if (fs.get_CanWrite()) {
                Console.WriteLine("The stream for file {0} is writable.",
                    path);
            }
            else {
                Console.WriteLine("The stream for file {0} is not writable.",
                    path);
            }
        }
        finally {
            fs.Dispose();
        }
    } //main
} //Test

Voici un exemple d'utilisation de la propriété CanWrite. Le résultat généré par ce code est "MyFile.txt is writable". Pour obtenir le message de sortie "MyFile.txt can be both written to and read from", remplacez le paramètre FileAccess par ReadWrite dans le constructeur FileStream.

using System;
using System.IO;
 
class TestRW 
{
    public static void Main(String[] args)
    {
        FileStream fs = new FileStream("MyFile.txt", FileMode.OpenOrCreate, FileAccess.Write);
        if (fs.CanRead && fs.CanWrite)
        {
            Console.WriteLine("MyFile.txt can be both written to and read from.");
        }
        else if (fs.CanWrite)
        {
            Console.WriteLine("MyFile.txt is writable.");
        }
    }
}

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0

.NET Compact Framework

Prise en charge dans : 2.0, 1.0

Ajouts de la communauté

Afficher:
© 2014 Microsoft