블로그에 유용한 사이트 글을 올리기 위해 작업을 하던중 자료가 지저분하여 정리할 필요가 생겼습니다.
어떠한 경우냐면은 아래와 같이 링크와 설명글이 붙어있어 보기에 좋지 않고 링크를 달기 어려워 링크와 설명글 사이에 공백(tab)를 붙여야 하는 경우 입니다.
간단하게 자바로 짜보았습니다.
파일을 읽어 한 line씩 읽어오면서 한글이 있으면 그 사이에 (tab)를 넣는 소스 입니다.
[예제]
package test; import java.io.IOException; import java.io.PrintWriter; import java.nio.charset.Charset; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.List; public class ScannerTest { public static void main(String[] args) { Path path = Paths.get("C:/test", "test.txt"); Charset charset = Charset.forName("UTF-8"); String writeFilePath = "C:/test/new_test.txt"; PrintWriter out = null; char chrValue; boolean check = false; try{ out = new PrintWriter(writeFilePath); List<String> lines = Files.readAllLines(path, charset); for(String line : lines){ check = false; for (int i = 0; i < line.length(); i++) { chrValue = line.charAt(i); // 입력받은 텍스트에서 문자 하나하나 가져와서 체크 if (!(chrValue >= 0x00 && chrValue <= 0x7F)) {//영어,숫자,특수기호 텍스트에서 벗어나면 실행해라 line = line.substring(0, i)+"\t"+line.substring(i);//영어,숫자,특수기호와 한글사이에 공백(tab) 입력 check = true;//영어숫자 텍스트에서 벗어나면 표시 } if(check){ break; } } out.println(line); } out.close(); } catch (IOException e){ e.printStackTrace(); } finally { if(out!=null){ out.close(); } } } }
[아스키코드표]
10진수 | 16진수 | 8진수 | 2진수 | ASCII |
0 | 0×00 | 0 | 0 | NULL |
1 | 0×01 | 1 | 1 | SOH |
2 | 0×02 | 2 | 10 | STX |
3 | 0×03 | 3 | 11 | ETX |
4 | 0×04 | 4 | 100 | EOT |
5 | 0×05 | 5 | 101 | ENQ |
6 | 0×06 | 6 | 110 | ACK |
7 | 0×07 | 7 | 111 | BEL |
8 | 0×08 | 10 | 1000 | BS |
9 | 0×09 | 11 | 1001 | HT |
10 | 0×0A | 12 | 1010 | LF |
11 | 0×0B | 13 | 1011 | VT |
12 | 0×0C | 14 | 1100 | FF |
13 | 0×0D | 15 | 1101 | CR |
14 | 0×0E | 16 | 1110 | SO |
15 | 0×0F | 17 | 1111 | SI |
16 | 0×10 | 20 | 10000 | DLE |
17 | 0×11 | 21 | 10001 | DC1 |
18 | 0×12 | 22 | 10010 | SC2 |
19 | 0×13 | 23 | 10011 | SC3 |
20 | 0×14 | 24 | 10100 | SC4 |
21 | 0×15 | 25 | 10101 | NAK |
22 | 0×16 | 26 | 10110 | SYN |
23 | 0×17 | 27 | 10111 | ETB |
24 | 0×18 | 30 | 11000 | CAN |
25 | 0×19 | 31 | 11001 | EM |
26 | 0×1A | 32 | 11010 | SUB |
27 | 0×1B | 33 | 11011 | ESC |
28 | 0×1C | 34 | 11100 | FS |
29 | 0×1D | 35 | 11101 | GS |
30 | 0×1E | 36 | 11110 | RS |
31 | 0×1F | 37 | 11111 | US |
32 | 0×20 | 40 | 100000 | SP |
33 | 0×21 | 41 | 100001 | ! |
34 | 0×22 | 42 | 100010 | " |
35 | 0×23 | 43 | 100011 | # |
36 | 0×24 | 44 | 100100 | $ |
37 | 0×25 | 45 | 100101 | % |
38 | 0×26 | 46 | 100110 | & |
39 | 0×27 | 47 | 100111 | ' |
40 | 0×28 | 50 | 101000 | ( |
41 | 0×29 | 51 | 101001 | ) |
42 | 0×2A | 52 | 101010 | * |
43 | 0×2B | 53 | 101011 | + |
44 | 0×2C | 54 | 101100 | ' |
45 | 0×2D | 55 | 101101 | - |
46 | 0×2E | 56 | 101110 | . |
47 | 0×2F | 57 | 101111 | / |
48 | 0×30 | 60 | 110000 | 0 |
49 | 0×31 | 61 | 110001 | 1 |
50 | 0×32 | 62 | 110010 | 2 |
51 | 0×33 | 63 | 110011 | 3 |
52 | 0×34 | 64 | 110100 | 4 |
53 | 0×35 | 65 | 110101 | 5 |
54 | 0×36 | 66 | 110110 | 6 |
55 | 0×37 | 67 | 110111 | 7 |
56 | 0×38 | 70 | 111000 | 8 |
57 | 0×39 | 71 | 111001 | 9 |
58 | 0×3A | 72 | 111010 | : |
59 | 0×3B | 73 | 111011 | ; |
60 | 0×3C | 74 | 111100 | < |
61 | 0×3D | 75 | 111101 | = |
62 | 0×3E | 76 | 111110 | > |
63 | 0×3F | 77 | 111111 | ? |
64 | 0×40 | 100 | 1000000 | @ |
65 | 0×41 | 101 | 1000001 | A |
66 | 0×42 | 102 | 1000010 | B |
67 | 0×43 | 103 | 1000011 | C |
68 | 0×44 | 104 | 1000100 | D |
69 | 0×45 | 105 | 1000101 | E |
70 | 0×46 | 106 | 1000110 | F |
71 | 0×47 | 107 | 1000111 | G |
72 | 0×48 | 110 | 1001000 | H |
73 | 0×49 | 111 | 1001001 | I |
74 | 0×4A | 112 | 1001010 | J |
75 | 0×4B | 113 | 1001011 | K |
76 | 0×4C | 114 | 1001100 | L |
77 | 0×4D | 115 | 1001101 | M |
78 | 0×4E | 116 | 1001110 | N |
79 | 0×4F | 117 | 1001111 | O |
80 | 0×50 | 120 | 1010000 | P |
81 | 0×51 | 121 | 1010001 | Q |
82 | 0×52 | 122 | 1010010 | R |
83 | 0×53 | 123 | 1010011 | S |
84 | 0×54 | 124 | 1010100 | T |
85 | 0×55 | 125 | 1010101 | U |
86 | 0×56 | 126 | 1010110 | V |
87 | 0×57 | 127 | 1010111 | W |
88 | 0×58 | 130 | 1011000 | X |
89 | 0×59 | 131 | 1011001 | Y |
90 | 0×5A | 132 | 1011010 | Z |
91 | 0×5B | 133 | 1011011 | [ |
92 | 0×5C | 134 | 1011100 | \ |
93 | 0×5D | 135 | 1011101 | ] |
94 | 0×5E | 136 | 1011110 | ^ |
95 | 0×5F | 137 | 1011111 | _ |
96 | 0×60 | 140 | 1100000 | . |
97 | 0×61 | 141 | 1100001 | a |
98 | 0×62 | 142 | 1100010 | b |
99 | 0×63 | 143 | 1100011 | c |
100 | 0×64 | 144 | 1100100 | d |
101 | 0×65 | 145 | 1100101 | e |
102 | 0×66 | 146 | 1100110 | f |
103 | 0×67 | 147 | 1100111 | g |
104 | 0×68 | 150 | 1101000 | h |
105 | 0×69 | 151 | 1101001 | i |
106 | 0×6A | 152 | 1101010 | j |
107 | 0×6B | 153 | 1101011 | k |
108 | 0×6C | 154 | 1101100 | l |
109 | 0×6D | 155 | 1101101 | m |
110 | 0×6E | 156 | 1101110 | n |
111 | 0×6F | 157 | 1101111 | o |
112 | 0×70 | 160 | 1110000 | p |
113 | 0×71 | 161 | 1110001 | q |
114 | 0×72 | 162 | 1110010 | r |
115 | 0×73 | 163 | 1110011 | s |
116 | 0×74 | 164 | 1110100 | t |
117 | 0×75 | 165 | 1110101 | u |
118 | 0×76 | 166 | 1110110 | v |
119 | 0×77 | 167 | 1110111 | w |
120 | 0×78 | 170 | 1111000 | x |
121 | 0×79 | 171 | 1111001 | y |
122 | 0×7A | 172 | 1111010 | z |
123 | 0×7B | 173 | 1111011 | { |
124 | 0×7C | 174 | 1111100 | | |
125 | 0×7D | 175 | 1111101 | } |
126 | 0×7E | 176 | 1111110 | ~ |
127 | 0×7F | 177 | 1111111 | DEL |
java 해당월 마지막 날짜(일) (java calendar getactualmaximum vs getmaximum) (0) | 2017.01.17 |
---|---|
Java 날짜 비교 (compareTo) (0) | 2016.12.14 |
java 파일, 디렉토리 삭제 (java file directory delete) (0) | 2016.09.20 |
[JAVA] 자바 형변환 (0) | 2016.09.01 |
Java Map 전체 출력 (0) | 2016.08.31 |
댓글 영역