Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JAVA:给定特定的行和列,替换JTextArea中的字符_Java - Fatal编程技术网

JAVA:给定特定的行和列,替换JTextArea中的字符

JAVA:给定特定的行和列,替换JTextArea中的字符,java,Java,我正在写一个解释Befunge(93)程序的程序。 正如您所知,Befunge有一个特殊的命令“p”。 此命令将某些给定字符(由程序本身)放入“代码空间”本身,对此我很好奇。 我已经做好了所有其他事情,包括命令“p”的执行。 但我无法使代码空间(我用JTextArea实现)与“p”代码动态交互。 我的意思是,当Befunge程序开始运行时,我将JTextArea保存到一个80*25字符的数组中,所有操作都在该数组中完成。 “p”命令也仅在内部操作,仅替换数组中的一个字符。(而不是源JTextAr

我正在写一个解释Befunge(93)程序的程序。
正如您所知,Befunge有一个特殊的命令“p”。
此命令将某些给定字符(由程序本身)放入“代码空间”本身,对此我很好奇。
我已经做好了所有其他事情,包括命令“p”的执行。
但我无法使代码空间(我用JTextArea实现)与“p”代码动态交互。

我的意思是,当Befunge程序开始运行时,我将JTextArea保存到一个80*25字符的数组中,所有操作都在该数组中完成。
“p”命令也仅在内部操作,仅替换数组中的一个字符。(而不是源JTextArea)

我想可视化代码空间的变化,所以我想问:


如何用另一个字符替换JTextArea中的一个字符,例如(2,3)?可能是这样的吗

void replaceChar(int row, int col, char replaceChar)
{
    int lineOffset = jTextArea.getLineStartOffset(row);
    jTextArea.replaceRange(new String(replaceCHar), lineOffset + col, lineOffset + col + 1);
}

也许是这样的

void replaceChar(int row, int col, char replaceChar)
{
    int lineOffset = jTextArea.getLineStartOffset(row);
    jTextArea.replaceRange(new String(replaceCHar), lineOffset + col, lineOffset + col + 1);
}
根据法律,这可能是由

int lineNumber = 2;
int charAtLineOffset = 3;

int offset = area.getLineStartOffset(lineNumber) + charAtLineOffset;
area.replaceRange(new String(newChar), offset , offset + 1);
根据法律,这可能是由

int lineNumber = 2;
int charAtLineOffset = 3;

int offset = area.getLineStartOffset(lineNumber) + charAtLineOffset;
area.replaceRange(new String(newChar), offset , offset + 1);