Sí. Debe usar el método SetCursorPosition of Console. Ejemplo:
Console.WriteLine("hello");
Console.SetCursorPosition(4, 0);
Console.WriteLine(" ");
Se mostrará 'infierno' Es necesario la realización del encargo método ReadLine que le permiten editar n-símbolos (por defecto) en la cadena de consola y cadena de retorno de un usuario. Este es mi ejemplo:
static string ReadLine(string Default)
{
int pos = Console.CursorLeft;
Console.Write(Default);
ConsoleKeyInfo info;
List<char> chars = new List<char>();
if (string.IsNullOrEmpty(Default) == false) {
chars.AddRange(Default.ToCharArray());
}
while (true)
{
info = Console.ReadKey(true);
if (info.Key == ConsoleKey.Backspace && Console.CursorLeft > pos)
{
chars.RemoveAt(chars.Count - 1);
Console.CursorLeft -= 1;
Console.Write(' ');
Console.CursorLeft -= 1;
}
else if (info.Key == ConsoleKey.Enter) { Console.Write(Environment.NewLine); break; }
//Here you need create own checking of symbols
else if (char.IsLetterOrDigit(info.KeyChar))
{
Console.Write(info.KeyChar);
chars.Add(info.KeyChar);
}
}
return new string(chars.ToArray());
}
Este método mostrará la cadena Por defecto. Espero haber entendido bien tu problema (lo dudo)
No creo que mi pregunta sea un duplicado de la pregunta proporcionada. Mi necesidad es mucho más específica y la respuesta dada sobre esa pregunta no responde a esta pregunta. La clase de consola, por lo que yo sé, no tiene nada que lo ayude a colocar texto editable en la línea de comando. – Chev
No hay línea de comando en una aplicación de consola a menos que programe uno. Y eso se puede hacer con la clase de la consola. Editar: la línea de cmd es el shell, lo que usas para iniciar la aplicación de la consola. Mientras se está ejecutando y está enviando material a la ventana de la consola, no está utilizando comandos de shell, es decir, la línea de comandos. Habría interpretado la (s) tecla (s) que se han presionado y realizará acciones específicas dependiendo de la tecla (es decir, mover el cursor hacia atrás una vez cuando se presiona la tecla de retroceso). –
@Alex Ford: En relación con "mucho más específico" - "¿cómo puedo print int "es mucho más específico que" cómo imprimo el objeto ", no veo diferencia. – agibalov