Попытка записи в файл
<pre>// I AM TRYING TO WRITE AND CREATE A FILE, USING ONLY ONE BIT AT A TIME. // I AM WRITING THE FILE, BUT NOTHING GOES IN. // ALSO I GETTING ERRORS FOR BEING OUTSIDE OF THE ARRAY. using System; using System.IO; using System.Collections; namespace Applica { static class Program { static void Main(string[] args) { bool tif = true; byte[] buffer = BitConverter.GetBytes(tif); FileInfo ap = new FileInfo("tempii.txt"); string filePath = ap.FullName; string destinationPath = Path.Combine("C:\\check", Path.GetFileName(filePath)); using (Stream output = File.OpenWrite(destinationPath)) { int bits = 32; while (bits > 0) { for (int i = 1; i < 33; i++)//4 random bytes { if (tif == true) { tif = false; goto A; } if (tif == false) tif = true; A:; output.Write(buffer, 0, bits); } } } } } }
Что я уже пробовал:
Я пытаюсь написать и создать файл, используя только один логический бит за раз. Я не могу получить логические биты в массив байтов, который составляет файл.
Patrice T
Точное сообщение об ошибке и положение !
computerpublic
//Я изменил код, как вы предложили, и все еще получаю ту же ошибку. Пожалуйста, смотрите ниже.
использование системы;
использование системы.ИО;
использование системы.Коллекции;
приложение пространства имен
{
программа статического класса
{
static void Main(string[] args)
{
боол срок действия = правда;
byte[] buffer = BitConverter.GetBytes(tif);
FileInfo ap = новый FileInfo("tempii.txt");
строку путь к файлу = АП.Полное имя;
строка destinationPath = путь.Объединить("C:\\check", Путь.GetFileName(путь_к_файлу));
using (Stream output = File.OpenWrite(destinationPath))
{
int байт = 4;
while (байты > 0)
{
for (int i = 1; i < 33; i++)//4 случайных байта
{
if (tif == true)
{
срок действия = ложь;
}
else if (tif == false)
{
срок действия = правда;
}
выход.Запись(буфер, 0, байт);
}
}
}
}
}
}
Patrice T
Лучший стиль не подразумевает никакой ошибки или исправления.
Вы понимаете, что ваш цикл записывает 32 раза одно и то же в файл? или хотя бы попытаться писать.