Skip to content

Instantly share code, notes, and snippets.

@flour4445
Created July 25, 2013 08:57
Show Gist options
  • Save flour4445/6078023 to your computer and use it in GitHub Desktop.
Save flour4445/6078023 to your computer and use it in GitHub Desktop.
文字列とか配列をJavaソースにそのまま使える形式にしてみるメソッドたち
package net.flourity.lib;
public class JavaSource
{
public static String toString(int[] a)
{
StringBuilder sb = new StringBuilder().append('{');
int length = a.length;
for(int i=0;i<length;i++)
{
if(i!=0)sb.append(", ");
sb.append(a[i]);
}
return sb.append('}').toString();
}
public static String toString(long[] a)
{
StringBuilder sb = new StringBuilder().append('{');
int length = a.length;
for(int i=0;i<length;i++)
{
if(i!=0)sb.append(", ");
sb.append(a[i]);
}
return sb.append('}').toString();
}
public static String toString(boolean[] a)
{
StringBuilder sb = new StringBuilder().append('{');
int length = a.length;
for(int i=0;i<length;i++)
{
if(i!=0)sb.append(", ");
sb.append(a[i]);
}
return sb.append('}').toString();
}
public static String toString(String[] a)
{
StringBuilder sb = new StringBuilder().append('{');
int length = a.length;
for(int i=0;i<length;i++)
{
if(i!=0)sb.append(", ");
sb.append(escapeString(a[i]));
}
return sb.append('}').toString();
}
public static String escapeString(String str)
{
StringBuilder sb = new StringBuilder(str.length()+2).append('"');
for(char ch : str.toCharArray())
{
switch(ch)
{
case '\\':
sb.append("\\\\");
break;
case '\"':
sb.append("\\\"");
break;
case '\'':
sb.append("\\\'");
break;
case '\b':
sb.append("\\b");
break;
case '\t':
sb.append("\\t");
break;
case '\n':
sb.append("\\n");
break;
case '\r':
sb.append("\\r");
break;
case '\f':
sb.append("\\f");
break;
default:
sb.append(ch);
}
}
return sb.append('"').toString();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment