中文乱码问题定位,求助

public class Test {
public static String getStr(String var0, String var1) {
if (var1 != null && var1.length() != 0) {
try {
byte[] var2 = new byte[var0.length()];
char[] var3 = var0.toCharArray();

            for (int var4 = var2.length - 1; var4 >= 0; --var4) {
                var2[var4] = (byte) var3[var4];
            }

            return new String(var2, var1);
        } catch (Exception var5) {
            return var0;
        }
    } else {
        return var0;
    }
}

public static void main(String[] args) {
    System.out.println(getStr("手术费","utf-8"));

}

}
输出结果:K/9
前提是不修改getStr方法。

这样写能够输出中文字符“手续费”。

// byte[] var2 = new byte[var0.length()];
            // char[] var3 = var0.toCharArray();
            // for (int var4 = var2.length - 1; var4 >= 0; --var4) {
            // var2[var4] = (byte) var3[var4];
            // }
            //
            // return new String(var2, var1);

            return new String(var0.getBytes());

System.out.println(getStr("手术费","iso-9001"));