Refactor convertStringToBytes method
This commit is contained in:
parent
e2e509210c
commit
011bcd27e2
@ -3,7 +3,6 @@ package net.sf.openrocket.file;
|
|||||||
import java.io.BufferedInputStream;
|
import java.io.BufferedInputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.nio.charset.Charset;
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.zip.GZIPInputStream;
|
import java.util.zip.GZIPInputStream;
|
||||||
import java.util.zip.ZipEntry;
|
import java.util.zip.ZipEntry;
|
||||||
@ -28,9 +27,9 @@ public class GeneralRocketLoader extends AbstractRocketLoader {
|
|||||||
private static final int READ_BYTES = 300;
|
private static final int READ_BYTES = 300;
|
||||||
|
|
||||||
private static final byte[] GZIP_SIGNATURE = { 31, -117 }; // 0x1f, 0x8b
|
private static final byte[] GZIP_SIGNATURE = { 31, -117 }; // 0x1f, 0x8b
|
||||||
private static final byte[] ZIP_SIGNATURE = TextUtil.convertStringToBytes("PK",Charset.forName("US-ASCII"));
|
private static final byte[] ZIP_SIGNATURE = TextUtil.asciiBytes("PK");
|
||||||
private static final byte[] OPENROCKET_SIGNATURE = TextUtil.convertStringToBytes("<openrocket",Charset.forName("US-ASCII"));
|
private static final byte[] OPENROCKET_SIGNATURE = TextUtil.asciiBytes("<openrocket");
|
||||||
private static final byte[] ROCKSIM_SIGNATURE = TextUtil.convertStringToBytes("<RockSimDoc",Charset.forName("US-ASCII"));
|
private static final byte[] ROCKSIM_SIGNATURE = TextUtil.asciiBytes("<RockSimDoc");
|
||||||
|
|
||||||
private final OpenRocketLoader openRocketLoader = new OpenRocketLoader();
|
private final OpenRocketLoader openRocketLoader = new OpenRocketLoader();
|
||||||
|
|
||||||
@ -78,7 +77,7 @@ public class GeneralRocketLoader extends AbstractRocketLoader {
|
|||||||
OpenRocketDocument doc = loadFromStream(in, motorFinder);
|
OpenRocketDocument doc = loadFromStream(in, motorFinder);
|
||||||
doc.getDefaultStorageOptions().setCompressionEnabled(true);
|
doc.getDefaultStorageOptions().setCompressionEnabled(true);
|
||||||
return doc;
|
return doc;
|
||||||
} else if ( entry.getName().matches(".*\\.[rR][kK][tT]$")) {
|
} else if (entry.getName().matches(".*\\.[rR][kK][tT]$")) {
|
||||||
OpenRocketDocument doc = loadFromStream(in, motorFinder);
|
OpenRocketDocument doc = loadFromStream(in, motorFinder);
|
||||||
return doc;
|
return doc;
|
||||||
}
|
}
|
||||||
|
@ -13,17 +13,13 @@ public class TextUtil {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return the byte array for the string in the given charset.
|
* Return the byte array for the string (in US-ASCII charset).
|
||||||
*
|
*
|
||||||
* This function is implemented because Froyo (Android API 8) does not support
|
* This function is implemented because Froyo (Android API 8) does not support
|
||||||
* String.getBytes(Charset)
|
* String.getBytes(Charset)
|
||||||
*
|
|
||||||
* @param string
|
|
||||||
* @param charSet
|
|
||||||
* @return
|
|
||||||
*/
|
*/
|
||||||
public static byte[] convertStringToBytes( String string, Charset charSet ) {
|
public static byte[] asciiBytes(String string) {
|
||||||
ByteBuffer encoded = charSet.encode(string);
|
ByteBuffer encoded = Charset.forName("US-ASCII").encode(string);
|
||||||
return encoded.array();
|
return encoded.array();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -188,13 +184,14 @@ public class TextUtil {
|
|||||||
/*
|
/*
|
||||||
* Returns a word-wrapped version of given input string using HTML syntax, wrapped to len characters.
|
* Returns a word-wrapped version of given input string using HTML syntax, wrapped to len characters.
|
||||||
*/
|
*/
|
||||||
public static String wrap(String in,int len) {
|
public static String wrap(String in, int len) {
|
||||||
in=in.trim();
|
in = in.trim();
|
||||||
if(in.length()<len) return in;
|
if (in.length() < len)
|
||||||
if(in.substring(0, len).contains("\n"))
|
return in;
|
||||||
|
if (in.substring(0, len).contains("\n"))
|
||||||
return in.substring(0, in.indexOf("\n")).trim() + "\n\n" + wrap(in.substring(in.indexOf("\n") + 1), len);
|
return in.substring(0, in.indexOf("\n")).trim() + "\n\n" + wrap(in.substring(in.indexOf("\n") + 1), len);
|
||||||
int place=Math.max(Math.max(in.lastIndexOf(" ",len),in.lastIndexOf("\t",len)),in.lastIndexOf("-",len));
|
int place = Math.max(Math.max(in.lastIndexOf(" ", len), in.lastIndexOf("\t", len)), in.lastIndexOf("-", len));
|
||||||
return "<html>"+in.substring(0,place).trim()+"<br>"+wrap(in.substring(place),len);
|
return "<html>" + in.substring(0, place).trim() + "<br>" + wrap(in.substring(place), len);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
package net.sf.openrocket.util;
|
package net.sf.openrocket.util;
|
||||||
|
|
||||||
import static java.lang.Math.PI;
|
import static java.lang.Math.PI;
|
||||||
import static org.junit.Assert.assertEquals;
|
|
||||||
import static org.junit.Assert.assertArrayEquals;
|
import static org.junit.Assert.assertArrayEquals;
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
|
||||||
import java.nio.charset.Charset;
|
import java.nio.charset.Charset;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
@ -17,19 +17,19 @@ public class TextUtilTest {
|
|||||||
Charset us_ascii = Charset.forName("US-ASCII");
|
Charset us_ascii = Charset.forName("US-ASCII");
|
||||||
|
|
||||||
byte[] ZIP_SIGNATURE_CORRECT = "PK".getBytes(us_ascii);
|
byte[] ZIP_SIGNATURE_CORRECT = "PK".getBytes(us_ascii);
|
||||||
byte[] ZIP_SIGNATURE_TEST = TextUtil.convertStringToBytes( "PK", us_ascii);
|
byte[] ZIP_SIGNATURE_TEST = TextUtil.asciiBytes("PK");
|
||||||
|
|
||||||
assertArrayEquals( ZIP_SIGNATURE_CORRECT, ZIP_SIGNATURE_TEST );
|
assertArrayEquals(ZIP_SIGNATURE_CORRECT, ZIP_SIGNATURE_TEST);
|
||||||
|
|
||||||
byte[] OPENROCKET_SIGNATURE_CORRECT = "<openrocket".getBytes(us_ascii);
|
byte[] OPENROCKET_SIGNATURE_CORRECT = "<openrocket".getBytes(us_ascii);
|
||||||
byte[] OPENROCKET_SIGNATURE_TEST = TextUtil.convertStringToBytes( "<openrocket", us_ascii);
|
byte[] OPENROCKET_SIGNATURE_TEST = TextUtil.asciiBytes("<openrocket");
|
||||||
|
|
||||||
assertArrayEquals( OPENROCKET_SIGNATURE_CORRECT, OPENROCKET_SIGNATURE_TEST);
|
assertArrayEquals(OPENROCKET_SIGNATURE_CORRECT, OPENROCKET_SIGNATURE_TEST);
|
||||||
|
|
||||||
byte[] ROCKSIM_SIGNATURE_CORRECT = "<RockSimDoc".getBytes(us_ascii);
|
byte[] ROCKSIM_SIGNATURE_CORRECT = "<RockSimDoc".getBytes(us_ascii);
|
||||||
byte[] ROCKSIM_SIGNATURE_TEST = TextUtil.convertStringToBytes( "<RockSimDoc", us_ascii);
|
byte[] ROCKSIM_SIGNATURE_TEST = TextUtil.asciiBytes("<RockSimDoc");
|
||||||
|
|
||||||
assertArrayEquals( ROCKSIM_SIGNATURE_CORRECT, ROCKSIM_SIGNATURE_TEST );
|
assertArrayEquals(ROCKSIM_SIGNATURE_CORRECT, ROCKSIM_SIGNATURE_TEST);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
Loading…
x
Reference in New Issue
Block a user