Создать и записать в новый файл - C#
Формулировка задачи:
Можете пожалуйста дать пример работы с бинарными файлами используя binarywriter, binaryreader например что-то простое типа записать из исходного бинарного файла ,в котором последовательность из отрицательных и положительных чисел, в новый бинарный файл только положительные.
Решение задачи: «Создать и записать в новый файл»
textual
Листинг программы
using System;
using System.IO;
namespace BinaryWR
{
class Program
{
static void Main(string[] args)
{
string fileName = "1.bin";
int[] arr = { 1, -2, 3, 4, -5, 6, 7, -8, 9 };
WritePositiveIntegers(fileName, arr);
int[] arr2 = ReadNumbers(fileName);
Console.WriteLine(string.Join(" ", arr2));
Console.ReadKey();
}
static void WritePositiveIntegers(string file, int[] arr)
{
using (Stream stream = new FileStream(file, FileMode.Create))
{
using (BinaryWriter writer = new BinaryWriter(stream))
{
foreach (int n in arr)
{
if (n>0)
{
writer.Write(n);
}
}
}
}
}
static int[] ReadNumbers(string file)
{
int[] arr;
using (Stream stream = new FileStream(file, FileMode.Open))
{
using (BinaryReader reader = new BinaryReader(stream))
{
int count = (int)stream.Length / 4;
arr = new int[count];
for (int i = 0; i < count; i++)
arr[i] = reader.ReadInt32();
}
}
return arr;
}
}
}