728x90
๐ ์์ฑ๊ณ๊ธฐ
SFTP ํ์์ ํ์ผ ๊ตํ์์ ๊ธธ์ด๋ฅผ ๊ณ ์ ํ ์ํ๋ก ๋น ๋ฌธ์์ด์ 0์ผ๋ก ์ฑ์์ผํ๋ ์
๋ฌด๊ฐ ์์๋ค.
์ด๋ป๊ฒ ํด๊ฒฐํด์ผ ํ ์ง ๊ณ ๋ฏผ ํ๋ค๊ฐ ๋น๊ฐ์ ์ฑ์ฐ๋ ์๊ณ ๋ฆฌ์ฆ์ ๋ง๋ค์ด ๋ ์์ค๋ฅผ ์ฐพ์ ์ ์์๋ค.
์์ธํ ์ค๋ช
์ ์์ค์์ ์ฃผ์์ ๋ฌ์ ์ค๋ช
ํด๋์์ผ๋ ์ฐธ๊ณ ํ๊ธธ ๋ฐ๋๋๋ค.
๐ป ์์ ์์ค
private final static int LEFT = 0;
private final static int RIGHT = 1;
/**
* String ํ์ ์๋ฃ๋ฅผ ์
๋ ฅ๋ฐ์ ๊ธธ์ด๋งํผ ๋ฌธ์๋ฅผ ์ฑ์์ ๋ฆฌํดํ๋ method
*
* inputData : ์๋ฐ์ดํ
* align : 0 - left, 1 - right (์ด๋์ชฝ์ ์ ๋ฐ์ดํ๋ฅผ ๋๊ฑด์ง...)
* fillSize : ๋๋ฆฌ๊ณ ์ํ๋ ๊ธธ์ด
* fillChar : ์ฑ์ธ ๋ฌธ์
*
* ์) : fmt("string", 1, 10, '0') => "0000string"
*/
public static String formatData(String data, int align, int fillSize, char fillChar) {
if (data == null) {
data = "";
}
byte[] bytes = data.getBytes();
int len = bytes.length;
if (len < fillSize) { // ๋ชจ์๋ผ๋ ๊ธธ์ด๋งํผ ์ฑ์ธ ๋ฌธ์์ด์ ๋ง๋ ๋ค.
if (align == LEFT) {
StringBuffer strbuf = new StringBuffer(data);
for (int i = len; i < fillSize; i++) {
strbuf.append(fillChar);
}
return strbuf.toString();
}
else {
StringBuffer strbuf = new StringBuffer();
for (int i = len; i < fillSize; i++) {
strbuf.append(fillChar);
}
strbuf.append(data);
return strbuf.toString();
}
}
else {
// ์ํ๋ ๊ธธ์ด๋ณด๋ค ํฌ๋ฉด ์๋ผ ๋ณด๋ธ๋ค.
// ํ๊ธ์ด ์๋ฆฌ๋ ๊ฒฝ์ฐ ์๋ฆฌ๋ ๊ธ์๋ ์ ์ธ
String tmp = "";
if(align == LEFT){
int idx = getUniLength(bytes, fillSize, LEFT);
tmp = new String(bytes, 0, idx);
if(idx < fillSize){
StringBuffer strbuf = new StringBuffer(tmp);
for(int i=idx; i<fillSize; i++){
strbuf.append(fillChar);
}
return strbuf.toString();
}else{
if(tmp.equals("")) tmp = new String(bytes, 0, fillSize-1) + " ";
return tmp;
}
}
else {
int idx = getUniLength(bytes, fillSize, RIGHT);
tmp = new String(bytes, idx, bytes.length-idx);
if(bytes.length-idx < fillSize){
StringBuffer strbuf = new StringBuffer();
for(int i=bytes.length-idx; i<fillSize; i++){
strbuf.append(fillChar);
}
strbuf.append(tmp);
return strbuf.toString();
}else{
if(tmp.equals("")) tmp = new String(bytes, len - fillSize + 1, fillSize) + " ";
return tmp;
}
}
}
}
private static int getUniLength(byte[] bytes, int size, int align) {
int idx = 0;
if(align == LEFT) {
for(idx = 0; idx < bytes.length && idx < size ; idx++) {
if(bytes[idx] > 127 || bytes[idx] < 0) {
idx++;
}
}
if(idx> size) idx = idx - 2;
} else {
for(idx = 0; idx < bytes.length - size ; idx++) {
if(bytes[idx] > 127 || bytes[idx] < 0) {
idx++;
}
}
}
return idx;
}
728x90
'BACK-END > JAVA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Java] 1์ฐจ์ ๋ฐฐ์ด์์ ์ค๋ณต๋์ง ์๋ ๊ฐ ์ฐพ๊ธฐ (0) | 2022.04.29 |
---|---|
[JAVA] URL๋ก ํ์ด์ง HTML์์ค ๊ฐ์ ธ์ค๊ธฐ (HttpsURLConnection) (0) | 2021.10.25 |
[Java] (์ฝ๊ธฐ์ ์ฉ ํ์ผ ์์คํ ) ํ์ผ์๋ฒ ๋์คํฌ ์๋ฌ (0) | 2021.09.24 |
[Java] 308 Permanent Redirect (0) | 2021.08.27 |
[Java] ๋ฌธ์ ๊ธธ์ด๋ฅผ ๊ณ ์ ์ฒ๋ฆฌํ์ฌ ๋ณด๊ธฐ ์ข๊ฒ ๋ง๋ค์. (0) | 2021.05.18 |