ผมต้องการเขียนข้อมูลส่งออกเป็น CSV ไฟล์ครับ โดยข้อมูลที่ผมนำเข้ามาเป็นไฟล์รูปแบบ log ไฟล์
ซึ่งจะมีการเว้น space ระหว่าง field ไม่เท่ากัน โดยเขาจะเว้นเป็น tab ครับ ผมก็เลยงงๆ ว่าจะเขียนโปรแกรมให้มันแยกระหว่าง field ยังไง ตัวนี้เป็น log ไฟล์ที่ผมกำลังจะลองตั้งสถานีวิทยุชุมชนน่ะครับ เผื่อไว้เก็บสถิติ
ต้องการเขียนโปรแกรม convert ข้อมูลออกเป็น csv ครับ
Moderator: mindphp, ผู้ดูแลกระดาน
-
- PHP Jr. Member
- โพสต์: 25
- ลงทะเบียนเมื่อ: 18/07/2008 11:01 pm
- ติดต่อ:
ต้องการเขียนโปรแกรม convert ข้อมูลออกเป็น csv ครับ
- แนบไฟล์
-
- playlist.zip
- รูปแบบไฟลืที่ผมมีครับ ผมฃองเขียนโดยให้มันแยกจาก space มันก็งงๆ ครับ เลยไม่ค่อยแน่ใจเท่าไร
- (658 ไบต์) ดาวน์โหลดแล้ว 226 ครั้ง
- mindphp
- ผู้ดูแลระบบ MindPHP
- โพสต์: 41117
- ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
- ติดต่อ:
Re: ต้องการเขียนโปรแกรม convert ข้อมูลออกเป็น csv ครับ
ลองอ่านไฟล์ ออกมาเป็น บรรทัดก่อน แล้วใช้
explode("\t",$linedata);
น่าจะพอช่วยได้ ลองดูนะครับ
ถ้าได้แล้วแนะนำคนอื่นบ้างนะครับ
explode("\t",$linedata);
น่าจะพอช่วยได้ ลองดูนะครับ
ถ้าได้แล้วแนะนำคนอื่นบ้างนะครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
-
- PHP Jr. Member
- โพสต์: 25
- ลงทะเบียนเมื่อ: 18/07/2008 11:01 pm
- ติดต่อ:
Re: ต้องการเขียนโปรแกรม convert ข้อมูลออกเป็น csv ครับ
ตกลงทำเสร็จเรียบร้อยแล้วครับ ลืมไปว่าใช้ ord() หาค่าได้ เพียงแต่ไม่รู้ว่า tab มันรหัสอะไร พอใช้ ord() โชว์ค่า char แต่ละตัวเลยพอเข้าใจครับ ก็ได้ตามนี้ครับ สั้นๆ ง่ายๆ ได้ใจความ ลืมหมดเลย ไม่ได้เขียนโปรแกรมมา 2 ปี ขอมาขูดสนิมก่อน ขอบคุณๆ mindphp นะครับ
โค้ด: เลือกทั้งหมด
function ConvertLog2CSV($fname,$ftype) // function convert text file to csv format
{
$fr = fopen($fname.".".$ftype, "r"); // fr = file read (source)
$fw = fopen($fname.".csv","w"); // fw = file write (target)
$strrow = null; // strrow = string row ผลลัพธ์ที่เก็บในรูปแบบบรรทัด
while (false !== ($char = fgetc($fr))) {
if (ord($char)==13) // 13 = "enter" character
{
$strrow=$strrow."\n"; // replace enter with enter and line feed character
fwrite($fw,$strrow); // write row
$strrow=null; // reset $strrow = reset row string
}
else if (ord($char)==9) // 9 = tab
{
$strrow=$strrow.","; // replace tab with "," separate column
}
else {
$strrow=$strrow.$char;
};
};
fclose($fw);
fclose($fr);
};
-
- Similar Topics
- ตอบกลับ
- แสดง
- โพสต์ล่าสุด
-
-
โพสต์ใหม่ PHP:Convert Function รวมฟังก์ชันแปลงเลขฐาน
โดย anuwat somsakul » 15/08/2018 10:32 am » ใน PHP Knowledge - 0 ตอบกลับ
- 1395 แสดง
-
โพสต์ล่าสุด โดย anuwat somsakul
15/08/2018 10:32 am
-
-
-
โพสต์ใหม่ convert List<string> to 1,2,3,4,5
โดย jataz2 » 25/08/2015 3:55 pm » ใน Programming - C/C++ & java & Python - 0 ตอบกลับ
- 944 แสดง
-
โพสต์ล่าสุด โดย jataz2
25/08/2015 3:55 pm
-
-
- 0 ตอบกลับ
- 1171 แสดง
-
โพสต์ล่าสุด โดย prmindphp
27/11/2019 11:26 am
ผู้ใช้งานขณะนี้
สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 49