PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Zeilenumbruch in CSV Datei entfernen (https://www.php-resource.de/forum/php-developer-forum/77751-zeilenumbruch-in-csv-datei-entfernen.html)

coolsero 07-11-2006 16:27

Zeilenumbruch in CSV Datei entfernen
 
Hallo,

ich habe mir mit Excel folgende CSV fdatei erstellt:

12.11.2006;13.11.2006;12;15;0;0;Test Eintrag;"M und sonst noch";2;München;1

nach dem M hat mir Excel den zeilenumbruch eingefühgt, den ich aber nicht wirklich weg bekommen!

ich versuche mit :

PHP-Code:


    $eintrag_ro 
ereg_replace( (chr(10) ,"",$eintrag_ro); 

den Zeilenumbruch zu entfernen ! Aber wenn ich nun mit:

PHP-Code:


    
echo $eintrag_ro

das ganze ausgebe ist der immer noch da ! Was mache ich an der ganzen sache falsch ?

Die ausgabe sieht so aus !
PHP-Code:

12.11.2006;13.11.2006;12;15;0;0;Test Eintrag;


und sonst noch
;2;Witzenhausen;


Danke Coolsero

TobiaZ 07-11-2006 16:35

Windows-Rechner benutzen CR und LF für den Zeilenwechsel.

überprüfe mal mt ord()

coolsero 07-11-2006 16:45

Hallo TobiaZ,

sorry aber das verstehe ich jetzt nicht so ganz ;)

wenn ich:

PHP-Code:

echo ord($eintrag_ro); 

mache, bekomme ich folgende ausgabe:

PHP-Code:

4932 

was sagt mir das ganze jetzt ?


Gruß Coolsero

TobiaZ 07-11-2006 16:47

nix. sicher, dass du nachgelesen hast, wofür ord da ist?

jahlives 07-11-2006 17:01

PHP-Code:

$search = array("\r\n","\n");
echo 
str_replace($search,'',$deinCSVString); 

Geht's denn so ?

Gruss

tobi

coolsero 09-11-2006 11:35

Hallo,

ich habe den Fehler gefunden, weiß aber nicht wie ich Ihn lösen soll!
Das Problem ist das ich aus Excel eine CSV Datei erstelle und wenn in einer Celle ein Zeielumbruch ist, dann setzt Excel das ganze in " . So nur wenn ich jetzt mit:

PHP-Code:

$org_data file($datei); 

das ganze aus der Datei lese, dann ist ja jeder Zeilenumbruch ein neuer Array eintrag. Was ich meine ist das der Teil nach dem Zeilenumbruch bis zum ende meiner Zeile schon in ein Seperates Array Feld geschrieben wird.

Ich versuche das mal genauer zu erkleren:

Das ist die zeile in meiner CSV datei:


PHP-Code:

12.11.2006;13.11.2006;12;15;0;0;Test Eintrag;"M und sonst noch";2;München;

Wenn nun nach dem M kein Zeilenumbruch ist, dann ist meine ausgabe so mit:

PHP-Code:

echo $org_data[0];
echo 
$org_data[1];

1. echo = 12.11.2006;13.11.2006;12;15;0;0;Test Eintrag;"M und sonst noch";2;München;1

2. 
echo = LEER 

Wenn jetzt nun aber nach dem M ein Zeilenumbruch kommt ! Ist meine ausgabe mit:

PHP-Code:

echo $org_data[0];
echo 
$org_data[1];

1. echo = 12.11.2006;13.11.2006;12;15;0;0;Test Eintrag;"M

2. echo =  und sonst noch"
;2;München;

Tja und was mache ich jetzt ? Ich meine wie bekomme ich die Komplete Zeile in $org_data[0] eingelesen so das ich dann den Zeilenumbruch entfernen kann.


Danke Coolsero

MrJonez 09-11-2006 11:43

Am besten ist es immer noch, wenn du das Excel-Dokument in Access importierst und von dort aus die Tabelle in CSV exportierst.

Ich hatte auch oft Probleme mit Excel-CSV und ohne Programmierung mal eben das Problem mit Access erledigt.

wahsaga 09-11-2006 11:58

http://www.php.net/manual/de/function.fgetcsv.php


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:42 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG