Как добавить вес к файлу? - C#
Формулировка задачи:
Добавляю byte так
Подскажите как добавить другие (Килобайты, мегайбайты, гигабайты) ?
Листинг программы
- private void _ByteAdd(string path, long bytes)
- {
- List<byte> byteList = new List<byte>();
- byteList.AddRange((IEnumerable<byte>)File.ReadAllBytes(path));
- byte[] numArray = new byte[bytes];
- byteList.AddRange((IEnumerable<byte>)numArray);
- FileInfo fileInfo = new FileInfo(path);
- File.WriteAllBytes(string.Format("{0}\\[FINALE] {1}", (object)fileInfo.DirectoryName, (object)fileInfo.Name), byteList.ToArray());
- }
Листинг программы
- private void btStart_Click(object sender, EventArgs e)
- {
- this._ByteAdd(this.TXPath.Text, (long)((int)this.Nmup.Value * 1024));
- }
Если всё таки не понятен для чего пример объясню, Данный метод добавляет вес к файлу в байтах!
Решение задачи: «Как добавить вес к файлу?»
textual
Листинг программы
- using System;
- using System.IO;
- namespace YourNamespace
- {
- public static class StreamEx
- {
- public static void Copy(Stream source, Stream destination, int bufferSize)
- {
- byte[] array = new byte[bufferSize];
- int count = source.Read(array, 0, bufferSize);
- if (count != 0)
- {
- do
- {
- destination.Write(array, 0, count);
- count = source.Read(array, 0, bufferSize);
- }
- while (count != 0);
- }
- }
- }
- // пример использования:
- private void _ByteAdd(string source, string destination, long count, long partSize)
- {
- using (FileStream sourceFile = File.Open(source, FileMode.Open, FileAccess.Read))
- {
- using (FileStream destFile = File.Open(destination, FileMode.OpenOrCreate, FileAccess.ReadWrite))
- {
- StreamEx.Copy(sourceFile, destFile, 81920);
- destFile.SetLength(sourceFile.Length + count * partSize);
- }
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д