在Visual FoxPro中。有一个函数addbs(),你传递一个字符串。
如果(修剪)字符串末尾没有反斜杠,则会添加一个反斜杠。如果有反斜杠,它将返回修剪过的字符串。
lcString = 'C:\Example'
lcNewString = addbs(lcString)
?lcNewString
Output:
C:\Example\
C#中是否有等效功能?
答案 0 :(得分:5)
也许Path课可以帮到你吗?例如,combine()方法。
答案 1 :(得分:1)
正如其他人已经说过的那样,您可能想要使用Path.Combine
但是,您可以轻松创建自己的方法来执行此操作:
public string AddBS(string value)
{
return value.EndsWith("\\") ? value : value + "\\";
}
为了使它更通用,我建议,制作一个像:
这样的扩展名public static class StringExtensions
{
public static string AddSuffix(this string value, string suffix)
{
return value.EndsWith(suffix) ? value : value + suffix;
}
}
答案 2 :(得分:1)
有一个免费的“ Visual FoxPro Toolkit for .NET ”,它有C#和VB库,可以将许多FoxPro函数带入.Net。
http://foxcentral.net/microsoft/vfptoolkitnet.htm
Visual FoxPro Toolkit for .NET是一个包含超过225个Visual FoxPro函数的类库,可用于任何.NET语言。包含的VFPToolkitNET.DLL是一个.NET托管代码DLL(不是COM包装器),不需要Visual FoxPro。支持的函数执行速度非常快,因为它们都是用.NET编写的,并编译成托管代码.NET DLL。包括参考和教程独立CHM帮助文件以及使用相同CHM帮助文件的Visual Studio .NET集成动态帮助。在使用任何.NET语言编程时,VFP功能都启用了完整的IntelliSense和动态帮助。使用VFP工具包或.NET,大多数Visual FoxPro函数可以在Visual Basic .NET或任何其他.NET语言中使用。像STRTOFILE()这样的函数只在一行代码中将字符串转换为文件。
此外,它说:
Visual FoxPro Toolkit for .NET不教授开发人员Visual Studio .NET编程,但它确实使开发人员能够更快地完成.NET编程,并根据他们熟悉的内容编写更少的代码,并结合这些函数减少编码的方式总体。它不是伪VFP语法,它是“真正的”VFP语法,并且在Visual Basic .NET中最自然地工作,因为它不需要命名空间。仍然必须学习Windows .NET Framework和Visual Basic .NET(或任何.NET语言)。这个工具包的功能是帮助Visual FoxPro开发人员使用.NET,因为对于具有这些功能的.NET编程,学习曲线要快得多。 Visual FoxPro Toolkit for .NET不能替代任何.NET语言。它恭维并增强了.NET语言编程的体验和生产力。
答案 3 :(得分:0)
您可以使用以下代码轻松完成此操作:
string lcString = @"C:\Example";
if(!lcString.Substring(lcString.Length -1, 1).Equals(@"\", StringComparison.InvariantCulture))
{
lcString += @"\";
}
答案 4 :(得分:0)
在这种情况下,我总是使用path.TrimEnd('\\') + "\\"
。由于我经常使用该代码,因此我编写了一个扩展方法:
public static string AddTrailingSlash(this string s, char slash = '\\')
{
return s.TrimEnd(slash) + slash;
}