最后一个字符' 我的字符串末尾的'已修改为空格字符 [英] final character ' ' at the end of my string has been modified to space character

查看:35
本文介绍了最后一个字符' 我的字符串末尾的'已修改为空格字符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望检索JTextField中文本结尾处的换行符,但是在将文本字段的文本设置为我的字符串后,它被修改为空格字符。下面的代码突出显示了该问题。

是否可以保留文本字段中的

import javax.swing.JTextField;

public class StackOver {
    public static void main(String[] args) {
        String hasNewLineEscapeCharacter = makeStringWithNewLineCharacter();
        JTextField backgroundText = new JTextField(90);
        backgroundText.setText(hasNewLineEscapeCharacter);
        char spaceChar = backgroundText.getText().charAt(backgroundText.getText().length()-1);
        char newLineChar = hasNewLineEscapeCharacter.charAt(needsNewLineEscapeCharacter.length()-1);
    }

    public static String makeStringWithNewLineCharacter() {
        String str = "hello,world!";
        str += ('
');
        return str;
    }       
}

推荐答案

有没有可能保存‘ ‘在我的JTextfield中?

AJTextField使用PlainDocument,它包含筛选" "并用空格字符替换。

要在文本字段中保留换行符,可以尝试:

textField.getDocument().putProperty("filterNewlines", Boolean.FALSE);

但是,这将导致文本显示在两行上,就像文本区域一样。

因此,如上所述,您应该只使用JTextArea。

无法在一行中显示包含换行符的文本。

您可能要做的是在文本字符串中存储一些其他不可打印的字符,然后使用String.replaceAll(...)如果您需要访问添加了换行符的文本。

这篇关于最后一个字符' 我的字符串末尾的'已修改为空格字符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆