Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Closed TopicStart new topic
> Dziwny problem z plikami :-).
cahe
post
Post #1





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


Hehehe :-). Zaraz głupawki dostane. Siedzę już trochę w php ale nie rozumiem jednego (nie jestem przyzwyczajony do korzystania z plików ;-)).

[php:1:daa688ee49]fputs($uchwyt_pliku, $string . "rn");[/php:1:daa688ee49]

To zapisuje plik w takiej formie:

Kod
4|40|1|7|350019732799628|2003-04-30|2003-05-13|S|Simens A35 IDEA|Idea POP|TELEXTREME



4|33|1|7|350019734939842|2003-04-30|2003-05-13|S|Simens A35 IDEA|Idea POP|TeleGSM


Nie potrzebuje tych głupich odstępów, ale dobra, kombinujemy dalej:

[php:1:daa688ee49]fputs($uchwyt_pliku, $string . "n");[/php:1:daa688ee49]

Kod
4|40|1|7|350019732799628|2003-04-30|2003-05-13|S|Simens A35 IDEA|Idea POP|TELEXTREME







4|33|1|7|350019734939842|2003-04-30|2003-05-13|S|Simens A35 IDEA|Idea POP|TeleGSM


Nie no, jeszcze lepiej - trzy odstępy :-).

To samo ma się z nr... proszę o pomoc, bo późno i nie mam już siły myśleć :-).
Go to the top of the page
+Quote Post
uboottd
post
Post #2





Grupa: Zarejestrowani
Postów: 384
Pomógł: 0
Dołączył: 3.04.2003
Skąd: Chorzow

Ostrzeżenie: (0%)
-----


Jests absolutnie pewien ze w zmiennej $string nie ma juz znaczkow formatujacych ? Albo zapisujesz pusty string ?

Bo generalnie drugi sposob jest wlasciwy. Ew. sprobuj:

[php:1:b3a2c4c115]
fputs($uchwyt_pliku, trim($string) . "n");[/php:1:b3a2c4c115]
Go to the top of the page
+Quote Post
spenalzo
post
Post #3





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


A usuwasz z wcześniej pobranej linijki znaki nowej linii na końcu?
[php:1:14d27206a0]<?php
$string=eregi_replace("n","",$string);
?>[/php:1:14d27206a0]


--------------------

Go to the top of the page
+Quote Post
DeyV
post
Post #4





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




a czemu erg_rep...?
Cytat
str_replace
If you don't need fancy replacing rules, you should always use this function instead of ereg_replace() or preg_replace().


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
FiDO
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

Ostrzeżenie: (0%)
-----


Otworz plik w trybie binarnym => fopen('nazwa',"wb") lub "ab" jesli 'appendujesz'.
Go to the top of the page
+Quote Post
cahe
post
Post #6





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


Cytat
Jests absolutnie pewien ze w zmiennej $string nie ma juz znaczkow formatujacych ? Albo zapisujesz pusty string ?

Bo generalnie drugi sposob jest wlasciwy. Ew. sprobuj:

[php:1:1c5a52356d]
fputs($uchwyt_pliku, trim($string) . "n");[/php:1:1c5a52356d]


Tak
Go to the top of the page
+Quote Post
cahe
post
Post #7





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


Cytat
Otworz plik w trybie binarnym => fopen('nazwa',"wb") lub "ab" jesli 'appendujesz'.


Nie pomoglo. To samo jest dalej.
Go to the top of the page
+Quote Post
cahe
post
Post #8





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


[php:1:dede285636]<?php
fputs($uchwyt, "string" . "n");

?>[/php:1:dede285636]

Jest to samo, czyli kwadraciki (aczkolwiek w notatniku tak to widać, a plik ten bedzie wlasnie w notatniku ogladany). rn podwojne linie. "string" dalem dla pewnosci, ze nie ma zadnych n ani innych w stringu przekazywanym.
Go to the top of the page
+Quote Post
spenalzo
post
Post #9





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Dodaj sobie jeszcze jeden znaczek | na końcu każdej linijki i przy ładowaniu pliku po prostu wyczyść tą komórkę tablicy.


--------------------

Go to the top of the page
+Quote Post
cahe
post
Post #10





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


Cytat
Dodaj sobie jeszcze jeden znaczek | na końcu każdej linijki i przy ładowaniu pliku po prostu wyczyść tą komórkę tablicy.


Ale to bedzie otwierane w notatniku tuż po wygenerowaniu.
Go to the top of the page
+Quote Post
FiDO
post
Post #11





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

Ostrzeżenie: (0%)
-----


[php:1:527c6828aa]
$f = fopen("bla.txt","wb");
fputs($f,"string"."n");
fclose($f);

$f = fopen("bla2.txt","wb");
fputs($f,"string"."rn");
fclose($f);
[/php:1:527c6828aa]

Te dwa tez Ci daja bledne wyniki??
U mnie dziala i w trybie binarnym i w tekstowym. Moze blad masz gdzies indziej?

A tak w ogole na jakim systemie dzieje sie akcja?
Go to the top of the page
+Quote Post
cahe
post
Post #12





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


Cytat
[php:1:770969744f]
$f = fopen("bla.txt","wb");
fputs($f,"string"."n");
fclose($f);

//Update 2:: Oczywiscie to takze działa, przepraszam za wprowadzenie w błąd.
$f = fopen("bla2.txt","wb");
fputs($f,"string"."rn");
fclose($f);
[/php:1:770969744f]

Te dwa tez Ci daja bledne wyniki??
U mnie dziala i w trybie binarnym i w tekstowym. Moze blad masz gdzies indziej?

A tak w ogole na jakim systemie dzieje sie akcja?


Win2k. To niestety też nie działa sad.gif.

Update:
[php:1:770969744f]
$f = fopen("bla2.txt","wb");
fputs($f,"string"."rn");
fputs($f,"string"."rn");
fclose($f);[/php:1:770969744f] <== to dziala znakomicie :-).
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #13





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Pokaż jak przygotowujesz $string...


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
cahe
post
Post #14





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


Cytat
Pokaż jak przygotowujesz $string...


Nie widze związku. Daje na próby $string = "string";
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #15





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat
Nie widze związku. Daje na próby $string = "string";

Nie sam napis string, bo to zawsze działa...
Pokaż jak przygotowujesz wiersz(e) do zapisu...


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
FiDO
post
Post #16





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

Ostrzeżenie: (0%)
-----


I twierdzisz, ze [php:1:16a6c43cb1]$f = fopen("bla2.txt","wb");
fputs($f,"string"."rn");
fclose($f);[/php:1:16a6c43cb1]
nie dziala, a to samo w podwojnym fputs'em dziala??

Napewno mowisz (piszesz) nam cala prawde? winksmiley.jpg
Cos dziwny ten Twoj problem...
Go to the top of the page
+Quote Post
cahe
post
Post #17





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


Cytat
I twierdzisz, ze [php:1:38ecdf7648]$f = fopen("bla2.txt","wb");
fputs($f,"string"."rn");
fclose($f);[/php:1:38ecdf7648]
nie dziala, a to samo w podwojnym fputs'em dziala??

Napewno mowisz (piszesz) nam cala prawde? winksmiley.jpg
Cos dziwny ten Twoj problem...


Nie, nie... dziala oczywiscie jako przyklad binarne otwarcie + rn. Nie wazne czy jedno czy dwa czy cztery (dalem dwa, zeby zobaczyc czy nie narobi odstepow).

//Update::

A teraz na spokojnie. Działa podane przez FiDO binarne otwarcie pliku i zapisywanie do niego, nie ważne czy jednej czy dwóch linijek. Chciałem tylko spradzić jak się zachowa przy dwóch, a potem wkleiłem odruchowo. A więc: dzięki FiDO :-). Nadmienie, że to samo dzieje się na innych systemach Win2k z którymi miałem styczność :-).
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #18





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Mówie Ci, pokaż jak przygotowujesz wiersze do zapisu...
Bo to niemożliwe żeby samo z siebie robiło odstępy.


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
cahe
post
Post #19





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


Cytat
Mówie Ci, pokaż jak przygotowujesz wiersze do zapisu...
Bo to niemożliwe żeby samo z siebie robiło odstępy.


Dobra.. przygotowuje tak:

$string = "string";

DOSŁOWNIE :-). Nic więcej nic mniej. I z tymi stingami "string" były odstępy (i są :-))
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #20





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Nadal chciałbym zobaczyć kod... jak ty to zapisujesz?
Który tryb? w czy a?
Używasz pętli? Pokaż... chyba że sie wstydzisz? :wink:


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 11:29