Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.18;
Скачать: 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 вся ветка

Текущий архив: 2002.11.18;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.013 c
3-58994
AKondor
2002-10-28 20:33
2002.11.18
Как организовать обмен данными в InterBase ?


14-59424
lak
2002-10-31 15:26
2002.11.18
html - переадресация


3-59051
Felix
2002-10-30 10:21
2002.11.18
Inter Base


1-59157
Cranium
2002-11-08 22:29
2002.11.18
Компанент типа DBRich но с возможностью отображения графики


1-59158
The_Vizit0r!
2002-11-08 22:22
2002.11.18
Эмуляция клика мышки