Thaiadmin

vbscript นับจำนวนตัวอักษร ใน text file

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

sahabin

vbscript นับจำนวนตัวอักษร ใน text file
« เมื่อ: 9 สิงหาคม 2010, 21:56:44 »
คือว่าอยากทราบวิธี และ หรือ ตัว อย่างการเขียน vb script นับจำนวนตัวอักษร ใน text file

  - ใน text file มีข้อความอยู่หลายพันบรรทัดแต่ละบรรทัดจำนวนตัวอักษรไม่เท่ากัน อยากได้ script นับจำนวนตัวอักษรในแต่ละ บรรทัด
 
มือใหม่หัดเขียน  :'(

ออฟไลน์ Totgio

  • ****
  • 410
  • 7
Re: vbscript นับจำนวนตัวอักษร ใน text file
« ตอบกลับ #1 เมื่อ: 13 กันยายน 2010, 15:58:31 »
ลอง ดูเองนะ

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\text.txt", ForReading)

Const ForReading = 1

Dim arrFileLines()
i = 0
Do Until objFile.AtEndOfStream
Redim Preserve arrFileLines(i)
arrFileLines(i) = objFile.ReadLine
i = i + 1
Loop
objFile.Close
sums=0
For Each strLine in arrFileLines
   counts = len( strLine)
   'WScript.Echo counts
   sums = sums + counts
   
Next

WScript.Echo "TTL charactor = " & sums
ลำดับขั้นความต้องการของมนุษย์ ( The Need –Hierarchy Conception of Human Motivation ) Maslow เรียงลำดับความต้องการของมนุษย์จากขั้นต้นไปสู่ความต้องการขั้นต่อไปไว้เป็นลำดับดังนี้
1. ความต้องการทางด้านร่างกาย ( Physiological needs )
2. ความต้องการความปลอดภัย ( Safety needs )
3. ความต้องการความรักและความเป็นเจ้าของ ( Belongingness and love needs )
4. ความต้องการได้รับความนับถือยกย่อง ( Esteem needs )
5. ความต้องการที่จะเข้าใจตนเองอย่างแท้จริง ( Self-actualization needs )

ออฟไลน์ rucifer

  • *
  • 14
  • 0
  • เพศ: ชาย
  • เด็กอ่อนหัด
Re: vbscript นับจำนวนตัวอักษร ใน text file
« ตอบกลับ #2 เมื่อ: 27 กันยายน 2010, 21:20:24 »
ลอง ดูเองนะ

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\text.txt", ForReading)

Const ForReading = 1

Dim arrFileLines()
i = 0
Do Until objFile.AtEndOfStream
Redim Preserve arrFileLines(i)
arrFileLines(i) = objFile.ReadLine
i = i + 1
Loop
objFile.Close
sums=0
For Each strLine in arrFileLines
   counts = len( strLine)
   'WScript.Echo counts
   sums = sums + counts
   
Next

WScript.Echo "TTL charactor = " & sums

รบกวนผู้ ช่วยให้ความกรุณา แปลให้หน่อยครับ
คือว่า ไม่เข้าใจอะ ครับ และกำลังสนใจเรื่องนี้อยู่พอดีเลย ขอความกรุณาช่วย ลูกช้าง ตาดำๆ นะครับ
ขอขอบคุณ ผู้ใจบุญไว้ล่วงหน้าเลยนะครับ ขอบคุณครับ :)
การไม่รู้ ไม่ผิด แต่จะผิด ที่ไม่ไฝ่รู้ "จงไฝ่หาความรู้ ประดั่งลมหายใจที่เข้าออก"

ออฟไลน์ my_sql

  • ****
  • 172
  • 2
  • เพศ: ชาย
Re: vbscript นับจำนวนตัวอักษร ใน text file
« ตอบกลับ #3 เมื่อ: 3 พฤศจิกายน 2010, 10:56:29 »

 ถ้าในไฟล์ C:\text.txt มีคำว่า ABCDE
 ถ้าผมอยากจะลบตัวอักษร 3 ตัวแรกกจะต้องเขียนยังไงครับ

 ขอบคุณครับ
จำพาสเวิร์ดเข้าใช้งานไม่ได้
ดูที่ remem ไว้ในโทรศัพท์
ได้ด้วยวิธีไหนบ้างครับ
2015-05-12

Parktesla

Re: vbscript นับจำนวนตัวอักษร ใน text file
« ตอบกลับ #4 เมื่อ: 16 พฤษภาคม 2015, 23:12:02 »
[bgcolor=#6BFF00]rem ประกาศตัวแปร fs และ txt[/bgcolor]
dim fs,txt
[bgcolor=#6BFF00]rem ใช้คำสั่ง createobject เซ็ตค่าให้ตัวแปร fs[/bgcolor]
set fs=createobject("scripting.filesystemobject")
[bgcolor=#6BFF00]rem แทนค่าให้ตัวแปร txt ด้วยแมทอด opentextfile ที่อยู่ในอ๊อบเจ็ค scripting ที่เราสร้างไว้
rem text.txt คำแหน่งไฟล์ text ของคุณ เลข 1 ด้านหลังคือพารามิเตอร์ที่ส่งไปให้กับแมทอดทราบว่าคุณแค่จะเปิดไฟล์อ่านอย่างเดียว[/bgcolor]
set txt=fs.opentextfile("text.txt",1)
[bgcolor=#6BFF00]rem คุณต้องวนลูปเพื่อเช็คที่ละบรรทัดว่าแต่ละบรรทัดมีกี่ตัวอักษร เงื่อนไขในการวนลูปคือ txt.atendofstream หมายความว่า วนลูปจนกว่าจะถึงบรรทัดสุดท้าย[/bgcolor]
do while txt.atendofstream<>true
[bgcolor=#6BFF00]rem wscript.echo คือคำสั่งแสดงข้อความ, len คือคำสั่งนับตัวอักษร, txt.readline คือคำสั่งอ่านข้อความที่ละบรรทัด[/bgcolor]
   wscript.echo len(txt.readline)
loop

[bgcolor=#001DFF]ถ้าสงสัยยังไง E-Mail มาถามผมได้ครับ[/bgcolor]

Parktesla

Re: vbscript นับจำนวนตัวอักษร ใน text file
« ตอบกลับ #5 เมื่อ: 16 พฤษภาคม 2015, 23:21:36 »
ถ้าในไฟล์ C:\text.txt มีคำว่า ABCDE
 ถ้าผมอยากจะลบตัวอักษร 3 ตัวแรกกจะต้องเขียนยังไงครับ

 ขอบคุณครับ

ใช้คำสั่ง right กับ len ช่วยครับ
เช่น ข้อความ ABCDE จะเอา แค่ DE ก็พิมพ์โค๊ดตามนี้

dim txt
txt="ABCDE"
txt=right(txt,len(txt)-3)
 'ทีนี้ค่าในตัวแปร txt ก็จะเหลือแค่ DE แล้วครับ