質問編集履歴
1
ソースコード変更したため
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,10 +12,36 @@
|
|
12
12
|
|
13
13
|
ですができたclassファイルをリフレクションを使用して実行させようとすると
|
14
14
|
|
15
|
-
java.lang.ClassFormatError:
|
15
|
+
java.lang.ClassFormatError: Unknown constant tag 119 in class file クラス名
|
16
16
|
|
17
17
|
というエラーが出ます。
|
18
18
|
|
19
19
|
Stringを経由させるのが行けないのだと思ったのですが、byte[]にreplace関数がないのでどうしたらbyteの置き換えが行なえますか?
|
20
20
|
|
21
21
|
String.replaceと同じような感じで置き換えがしたいです。
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
```Java
|
26
|
+
|
27
|
+
InputStream stream = zip.getInputStream(entry);
|
28
|
+
|
29
|
+
byte[] b = new byte[(int) entry.getSize()];
|
30
|
+
|
31
|
+
stream.read(b);
|
32
|
+
|
33
|
+
String a = new String(b,"ISO-8859-1");
|
34
|
+
|
35
|
+
a = a.replace("cpw/mods/fml/common/network/NetworkMod", "versionsmod/src/cpw/mods/fml/common/network/NetworkMod");
|
36
|
+
|
37
|
+
zipout.putNextEntry(new ZipEntry(entry.getName()));
|
38
|
+
|
39
|
+
zipout.write(a.getBytes("ISO-8859-1"));
|
40
|
+
|
41
|
+
zipout.closeEntry();
|
42
|
+
|
43
|
+
```
|
44
|
+
|
45
|
+
entry・・・ZipEntry
|
46
|
+
|
47
|
+
zipout・・・ZipOutputStream
|