Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.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
C# 清除.Net核心C中的MacOS终端#_C#_Macos_Terminal - Fatal编程技术网

C# 清除.Net核心C中的MacOS终端#

C# 清除.Net核心C中的MacOS终端#,c#,macos,terminal,C#,Macos,Terminal,我目前正在开发一个控制台应用程序,我已经设计了我的菜单,使菜单的活动元素以特定的背景色突出显示。要在更改活动元素后重新呈现菜单,我将使用控制台将光标移动到窗口的最顶部。SetCursorPosition(0,0),然后重写所有行。另外,Console.Clear()方法用于在移动到另一个菜单(可能大小不同)之前清除控制台 但是,这种方法在MacOS上似乎不起作用-Console.Clear()方法不起作用,而Console.SetCursorPosition(0,0)也不起作用-菜单相互重叠,而

我目前正在开发一个控制台应用程序,我已经设计了我的菜单,使菜单的活动元素以特定的背景色突出显示。要在更改活动元素后重新呈现菜单,我将使用
控制台将光标移动到窗口的最顶部。SetCursorPosition(0,0)
,然后重写所有行。另外,
Console.Clear()
方法用于在移动到另一个菜单(可能大小不同)之前清除控制台

但是,这种方法在MacOS上似乎不起作用-
Console.Clear()
方法不起作用,而
Console.SetCursorPosition(0,0)
也不起作用-菜单相互重叠,而不是被清除


有没有办法在MacOS上实现这一点,或者是因为MacOS终端的某些功能而无法实现这一点?

我的建议是使用

CurseSharp为类Unix系统提供了到
ncurses.h
库的C#绑定。理论上,您应该能够执行ncurses库能够执行的任何操作,包括清除屏幕和设置光标位置