텍스트를 암호화하고 해독 할 수있는 프로그램을 만들고 있습니다. 현재 나의 암호화 및 암호 해독 프로세스는 암호화의 중복/오류를 피하기 위해 사례 전환과 함께 발생합니다. 나는 이것이 작동해야하는 것처럼 느낀다. 기본적으로 암호화는 다음과 같은 방식으로 작동합니다. FOR 루프는 String 입력의 모든 문자를 읽은 다음이를 CASE SWITCH로 전환하여 특정 문자열로 바꿉니다. 다음과 같은 오류 메시지가 나타납니다 :Java 암호화 : "java.lang.OutOfMemoryError : Java heap space"
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:3332)
at java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:124)
at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:541)
at java.lang.StringBuffer.append(StringBuffer.java:350)
at java.util.regex.Matcher.appendReplacement(Matcher.java:888)
at java.util.regex.Matcher.replaceAll(Matcher.java:955)
at java.lang.String.replaceAll(String.java:2223)
at OR_v5_12_5_16.main(OR_v5_12_5_16.java:161)
----jGRASP wedge2: exit code for process is 1.
----jGRASP: operation complete.
다음은 약간 수정 된 단축 코드 버전입니다. 실제 코드 블록은 모두 26 개의 대문자와 26 개의 소문자를 통해 실행됩니다. 오류 메시지가 나타나기 전에 프로그램이 멈춘 것처럼 보입니다.
for (int i = 0; i < txt.length(); i++){
String txt_char = String.valueOf(txt.charAt(i));
switch (txt_char){
case "A":
txt = txt.replaceFirst("A", "11110000");
break;
}
}
코드를 [mcve]로 게시하면 도움을받을 수 있습니다. 우리는 효과적인 도움을 줄 수는 없습니다. – AJNeufeld
코드 및 로그를 복사하여 붙여 넣으십시오. 이 경우 이미지를 사용하지 마십시오. – sanastasiadis
@AJNeufeld 지금까지 제공되었습니다 – PeculiarTendencies