visual ruta invalid getfilename filename example combine c# string directory filepath visual-foxpro

ruta - string directory c#



¿Hay un C#equivalente a los addbs() de FoxPro? (5)

En Visual FoxPro. hay una función addbs (), a la cual le pasa una cadena.

Si no hay una barra invertida al final de la cadena (recortada), agregará una. Si hay una barra invertida, devolverá la cadena recortada.

lcString = ''C:/Example'' lcNewString = addbs(lcString) ?lcNewString Output: C:/Example/

¿Hay una función equivalente en C #?


Siempre utilicé path.TrimEnd(''//') + "//" en ese caso. Y como usé ese código bastante a menudo, escribí un método de extensión:

public static string AddTrailingSlash(this string s, char slash = ''//') { return s.TrimEnd(slash) + slash; }


¿Tal vez la clase Path puede ayudarte aquí? Por ejemplo, el método combine ().


Como ya dijeron los otros, es probable que desee utilizar Path.Combine

Sin embargo, puede crear fácilmente su propio método para hacerlo:

public string AddBS(string value) { return value.EndsWith("//") ? value : value + "//"; }

Para hacerlo más genérico, sugeriría, haciendo una extensión como:

public static class StringExtensions { public static string AddSuffix(this string value, string suffix) { return value.EndsWith(suffix) ? value : value + suffix; } }


Hay un " Kit de herramientas de Visual FoxPro gratuito para .NET " que tiene bibliotecas C # y VB que traen muchas de las funciones de FoxPro a .Net.

http://foxcentral.net/microsoft/vfptoolkitnet.htm

El Visual FoxPro Toolkit para .NET es una biblioteca de clase con más de 225 funciones de Visual FoxPro para usar con cualquier lenguaje .NET. El VFPToolkitNET.DLL incluido es un DLL de código administrado .NET (no un contenedor COM) y no requiere Visual FoxPro. Las funciones soportadas se ejecutan extremadamente rápido ya que están escritas en .NET y compiladas en un código administrado .NET DLL. Se incluye un archivo de ayuda de CHM autónomo de referencia y tutorial, así como ayuda dinámica integrada de Visual Studio .NET utilizando el mismo archivo de ayuda de CHM. La IntelliSense completa y la Ayuda dinámica están habilitadas para las funciones de VFP cuando se programa en cualquier lenguaje .NET. Al utilizar VFP Toolkit o .NET, la mayoría de las funciones de Visual FoxPro están disponibles en Visual Basic .NET o en cualquier otro lenguaje .NET. Funciones como STRTOFILE () convierten una cadena en un archivo en una sola línea de código.

Además, dice esto:

Visual FoxPro Toolkit para .NET no enseña a los desarrolladores la programación de Visual Studio .NET, pero sí permite a los desarrolladores hacer la programación de .NET mucho más rápido y escribir menos código en función de lo que están familiarizados, combinado con cómo estas funciones reducen la codificación en general. No es una sintaxis de pseudo-VFP, es una sintaxis de VFP "real" y funciona de forma más natural en Visual Basic .NET ya que no requiere el espacio de nombres. El Windows .NET Framework y Visual Basic .NET (o cualquier lenguaje .NET) aún deben ser aprendidos. Lo que hace este conjunto de herramientas es ayudar a los desarrolladores de Visual FoxPro que usan .NET ya que hay una curva de aprendizaje mucho más rápida para la programación de .NET que tiene estas funciones disponibles. El Visual FoxPro Toolkit para .NET no reemplaza a ningún lenguaje .NET. Complementa y mejora la experiencia y la productividad de la programación del lenguaje .NET.


Puedes hacerlo fácilmente usando el siguiente código:

string lcString = @"C:/Example"; if(!lcString.Substring(lcString.Length -1, 1).Equals(@"/", StringComparison.InvariantCulture)) { lcString += @"/"; }