Feedback

C# - File Container

Veröffentlicht von am 16.04.2010
(1 Bewertungen)
Mit dieser Klasse lässt sich eine Datei in ein Objekt speichern und somit in den Arbeitsspeicher verlagern.
Inklusive einer Save()-Methode, um die Datei wieder auf der Festplatte zu speichern.
Ein typisches Einsatzgebiet ist beispielsweise im Netzwerkbereich, um auf eine einfache Art eine Datei zu übertragen.
GFU-Schulungen  [Anzeige]

Visual Studio Team Foundation Server 2017/2015 (TFS) für Administratoren - Kompakt

Nach dieser Schulung beherrschen Sie die Grundlagen des TFS. Sie erledigen administrative Aufgaben schnell und sicher.

XML und .NET Überblick

Um auf dem neuesten Wissensstand zu sein, sollten Sie unser aktuelles ASP .NET Komplett Seminar belegen.
Nach dem Seminar kennen Sie die wichtigsten Strömungen in der Software-Technologie

using System;
using System.IO;

namespace FileContainer
{
    /// <summary>
    /// Beinhaltet eine komplette Datei.
    /// </summary>
    public class FileContainer
    {
        #region variables
        private FileInfo mInfo;
        private Byte[] mBinary;
        #endregion

        #region properties
        /// <summary>
        /// Dateiinformationen
        /// </summary>
        public FileInfo Info
        {
            get { return mInfo; }
        }
        /// <summary>
        /// Datei in Form von Bytes
        /// </summary>
        public Byte[] Binary
        {
            get { return mBinary; }
        }
        #endregion

        #region ctor
        /// <summary>
        /// Initialisiert ein neues Objekt einer Datei.
        /// </summary>
        /// <param name="path">Relative oder absolute Dateipfad</param>
        public FileContainer(string path)
        {
            if (File.Exists(path))
            {
                mInfo = new FileInfo(path);

                using (FileStream stream = mInfo.Open(FileMode.Open))
                {
                    mBinary = new Byte[mInfo.Length];
                    stream.Read(mBinary, 0, (int)mInfo.Length);
                }
            }
        }
        #endregion

        #region methods
        /// <summary>
        /// Speichert das Objekt in eine Datei.
        /// </summary>
        /// <param name="target">Zielpfad</param>
        public void Save(string target)
        {
            using (FileStream stream = File.Open(target, FileMode.OpenOrCreate, FileAccess.Write))
            {
                stream.Write(mBinary, 0, mBinary.Length);
            }
        }
        #endregion
    }
}

1 Kommentare zum Snippet

hackman schrieb am 16.04.2010:
nette idee,
allerdings wird beim zurückspeichern die fileinfo gar nicht weiterverwendet
 

Logge dich ein, um hier zu kommentieren!