Вниз
Скачать: CL | DM;

Научите...   Найти похожие ветки 

← →
Fog ©   (2002-11-05 20:00) [0]

... избавляться от "I/0 error 32"!
Я пытаюсь записать в файл:

AssignFile(f, "FileName");
Rewrite(f);
Write(f, ToChtoNado);
CloseFile(f);


← →
Юрий Зотов ©   (2002-11-05 20:12) [1]

Как объявлены F и ToChtoNado?


← →
Shadow ©   (2002-11-05 20:27) [2]

Файл FileName существует?

ЗЫ На обучение к Юрию Зотову!


← →
Anatoly Podgoretsky ©   (2002-11-05 20:36) [3]

Наверно файл еще где то открыт


← →
Alex4444444444   (2002-11-05 20:45) [4]

32L ERROR_SHARING_VIOLATION


← →
KoluChi ©   (2002-11-06 10:28) [5]


AssignFile(F, FileName);
{$I-}
Reset(F);
{$I+}
if (IOResult = 0) then
try
Writeln(F, ...)
...
finally
CloseFile(F);
end
else
ShowMessage("not access to file");


← →
Fog ©   (2002-11-06 15:23) [6]


> Как объявлены F и ToChtoNado?


TSomething = object
smInt: integer;
end;

ChotoEshe = record
Smth: array[0..10, 0..10] of TSomething;
end;

var
ToChtoNado:ChtotoEshe;

var
f:File of ChotoEshe;
i,j:integer;
begin
for i := 0 to 10 do
begin
for j := 0 to 10 do
begin
ToChtoNado.Smth[i, j].smInt := random(3);
end;
end;
AssignFile(f, FileName); //FileName - существующий файл
Rewrite(f);
Write(f, ToChtoNado);
.
.
.
end;


← →
Ru ©   (2002-11-06 15:44) [7]

>Shadow © (05.11.02 20:27)

rewrite его создаст если файл не существует

>Fog

попробуй создать текстовый или нетипизированый файл. Целочисленные данные неплохо пишутся в текстовый файл и также читаются, кажись даже без преобразования.


← →
Skier ©   (2002-11-06 16:05) [8]

>Fog
А объекты TSomething создаются ?


← →
Fog ©   (2002-11-06 16:07) [9]


> Ru © (06.11.02 15:44)

Пишу f:TextFile;
а компилятор отвечает

[Error] create.pas(54): Illegal type in Write/Writeln statement

Пишу f:File of integer
а компилятор

[Error] create.pas(54): Incompatible types: "Integer" and "ChtotoEse"

А когда пишу
{$I-}
Rewrite(f);
{$I+}
Получается пустой файл.


← →
Fog ©   (2002-11-06 16:10) [10]


> Skier © (06.11.02 16:05)

Пологаю они создаются вместе с ToChtoNado:ChtotoEshe


← →
Skier ©   (2002-11-06 16:13) [11]

>Fog
А вот я полагаю что НЕТ.


← →
Fog ©   (2002-11-06 16:30) [12]


> Skier

Да? Где же его создать если его использует толко ToChtoNado:ChtotoEshe...


← →
Skier ©   (2002-11-06 16:38) [13]

>Fog

Примерно так (хотя способ извратный) :


TSomething = object
smInt: integer;
end;

ChotoEshe = record
Smth: array[0..10, 0..10] of TSomething;
end;

var
ToChtoNado:ChtotoEshe;

var
f:File of integer;
i,j:integer;
begin
for i := 0 to 10 do
begin
for j := 0 to 10 do
begin
ToChtoNado.Smth[i, j] := TSomething.Create;
ToChtoNado.Smth[i, j].smInt := random(3);
end;
end;
try

AssignFile(f, FileName); //FileName - существующий файл
Rewrite(f);


for i := 0 to 10 do
begin
for j := 0 to 10 do
begin
Write(f, ToChtoNado.Smth[i, j].smInt);
end;
end;

finally
CloseFile(f);

for i := 0 to 10 do
begin
for j := 0 to 10 do
begin
ToChtoNado.Smth[i, j].Free;
ToChtoNado.Smth[i, j] := nil;
end;
end;
end; //try
.
.
.
end;


← →
LongIsland ©   (2002-11-06 16:45) [14]


> ToChtoNado.Smth[i, j] := TSomething.Create

И получим удовольствие видеть надпись Undeclared identifier: "Create":-)


← →
Skier ©   (2002-11-06 16:48) [15]

>LongIsland
Слона не заметил :))

>Fog


TSomething = class
smInt: integer;
end;


← →
Alex4444444444   (2002-11-06 16:57) [16]

Nu, muzhiki, obaldennye u vas identificatory...


← →
Alex4444444444   (2002-11-06 16:59) [17]

Da, no focus v tom, chto I/O 32---eto sharing violation, t.e., skoree vsego file uzhe kem-to otkryt i ToChtoNado.Smth[i, j] := TSomething.Create zdes" ni pri chem...


← →
Skier ©   (2002-11-06 17:04) [18]

>Alex4444444444
Ни при чём...может быть. Но мне кажется создание объектов не
помешает ? :)
И ещё как тебе это
Write(f, ToChtoNado); - не понятно что вообще автор пытается
писать в файл. Ждём-с...



← →
Alex4444444444   (2002-11-06 17:11) [19]

Soglasen. Eto moglo by privesti c access violation, no, k schast"yu, ne privodit, t.k. vyletaet na I/O 32 :)


← →
Fog ©   (2002-11-06 18:03) [20]


> Write(f, ToChtoNado); - не понятно что вообще автор пытается

Как что? Это переменная C htotoEshe в которой Smth[i, j].smInt := random(3);
Иля я и сдесь чтот-то напортачил?


← →
trotski   (2002-11-06 19:05) [21]

Попробуй так:
var f:file;
begin
assignfile(f,"...");
rewrite(f,1);
...
write(f,Chtoto,SizeOf(ChtoTo));
closefile(f);


← →
Alex4444444444   (2002-11-06 19:40) [22]

A Vy ne hotite dojti do strochki
rewrite(f,1);
ostanovit"sya ( pered nej), i poprobovat", skazhem, udalit" etot file Explorer"om (predvaritel"no, konechno, sdelav copiyu).



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.49 MB
Время: 0.012 c
4-59482
DeCompiler
2002-10-06 13:24
2002.11.18
Сообщения мыши


1-59140
Zn
2002-11-08 16:06
2002.11.18
Индикация выполнения процесса в StatusBar.


4-59512
АндрейС
2002-10-04 13:47
2002.11.18
Как поместить иконку приложения в IconTray


14-59332
DiamondShark
2002-10-31 17:08
2002.11.18
Да здравствуют наши программисты!


1-59237
DelphiDummy
2002-11-02 13:33
2002.11.18
Алгоритм шифрования ГОСТ-28147-89 на Delphi




   Наверх