Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CLS
- bytes = 0: chars = 0
- OPEN "C:\input8.txt" FOR BINARY AS #1
- WHILE NOT EOF(1)
- b$ = INPUT$(1, #1)
- IF b$ >= " " THEN a$ = a$ + b$
- IF b$ < " " OR EOF(1) THEN GOSUB ProcLine: a$ = ""
- WEND
- CLOSE #1
- END
- ProcLine:
- bytes = bytes + LEN(a$)
- IF a$ = "" THEN RETURN
- m$ = MID$(a$, 2, LEN(a$) - 2) 'strip endquotes
- b$ = ""
- 'extract words
- FOR i = 1 TO LEN(m$)
- c$ = MID$(m$, i, 2)
- IF c$ = "\\" THEN
- b$ = b$ + "\"
- i = i + 1
- ELSEIF c$ = "\" + CHR$(34) THEN
- b$ = b$ + CHR$(34)
- i = i + 1
- ELSEIF c$ = "\x" THEN
- ok1 = -1: ok2 = -1
- h1$ = MID$(m$, i + 2, 1)
- h2$ = MID$(m$, i + 3, 1)
- IF h1$ >= "0" AND h1$ <= "9" THEN ok1 = ASC(h1$) - 48
- IF h1$ >= "a" AND h1$ <= "f" THEN ok1 = ASC(h1$) - 87
- IF h2$ >= "0" AND h2$ <= "9" THEN ok2 = ASC(h2$) - 48
- IF h2$ >= "a" AND h2$ <= "f" THEN ok2 = ASC(h2$) - 87
- IF ok1 >= 0 AND ok2 >= 0 THEN
- chex = ok1 * 16 + ok2
- b$ = b$ + CHR$(chex)
- i = i + 3
- ELSE
- b$ = b$ + "\"
- END IF
- ELSE
- b$ = b$ + MID$(m$, i, 1)
- END IF
- NEXT
- COLOR 15: PRINT a$; : COLOR 9: PRINT b$
- COLOR 8
- chars = chars + LEN(b$)
- PRINT bytes; chars; bytes - chars
- RETURN
Advertisement
Add Comment
Please, Sign In to add comment