如何输出字符串文本,以便在 C# 中没有换行符

How to output string text so there’s no line breaks with words in C#

我一直在这里搜索,我正在开发一个具有各种响应的聊天机器人,其中一些响应是很长的字符串。有什么方法可以确保换行符不会出现在输出的单词中间?我是否必须在每次响应之前将它插入我的代码或在方法开始之前定义它?或者这是不可能的?谢谢。

没有 built-in 格式化字符串以适应控制台的方法。

您需要确定您的换行算法的标准是什么并实施它。

备注

  • 你每次渲染文本时都需要 re-calculate 它(假设你显示了某种历史记录)因为 window 大小可以改变(你可以调整控制台大小 windows 类似到所有其他 windows 从而改变 character-width).
  • 根据语言的不同,单词的边界可以从微不足道的实现(“只需使用空格”)到一次 don't use spaces (range similar to xkcd:Tasks :)) 的多年研究项目。

如果您有选择,我建议您切换到 HTML 渲染而不是控制台,因为那里已经为您完成了分词(更像是您将很难使用的正确表情符号) 在控制台应用程序中)