4

在可视 FoxPro 中。有一个函数 addbs(),你可以向它传递一个字符串。

如果(修剪)字符串的末尾没有反斜杠,它将添加一个。如果有反斜杠,它将返回修剪后的字符串。

lcString = 'C:\Example'
lcNewString = addbs(lcString)
?lcNewString

Output:
C:\Example\

C#中是否有等效函数?

4

5 回答 5

5

也许Path课程可以帮助你?例如 combine() 方法。

于 2013-04-12T08:31:35.610 回答
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;
    }
}
于 2013-04-12T08:46:26.937 回答
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 Toolkit 或 .NET,大多数 Visual FoxPro 函数都可以在 Visual Basic .NET 或任何其他 .NET 语言中使用。STRTOFILE() 之类的函数只需一行代码即可将字符串转换为文件。

此外,它说:

.NET 的 Visual FoxPro 工具包不教开发人员 Visual Studio .NET 编程,但它确实使开发人员能够更快地进行 .NET 编程,并根据他们熟悉的内容以及这些功能如何减少总体编码的编写更少的代码。它不是伪 VFP 语法,它是“真正的”VFP 语法,并且在 Visual Basic .NET 中最自然地工作,因为它不需要命名空间。仍然必须学习 Windows .NET Framework 和 Visual Basic .NET(或任何 .NET 语言)。该工具包的作用是帮助 Visual FoxPro 开发人员使用 .NET,因为具有这些功能的 .NET 编程的学习曲线要​​快得多。.NET 的 Visual FoxPro 工具包不是任何 .NET 语言的替代品。它补充并增强了 .NET 语言编程的体验和生产力。

于 2013-04-24T05:33:25.450 回答
0

您可以使用以下代码轻松做到这一点:

string lcString = @"C:\Example";

if(!lcString.Substring(lcString.Length -1, 1).Equals(@"\", StringComparison.InvariantCulture))
{
    lcString += @"\";
}
于 2013-04-12T08:37:46.630 回答
0

我总是path.TrimEnd('\\') + "\\"在那种情况下使用。由于我经常使用该代码,因此我编写了一个扩展方法:

public static string AddTrailingSlash(this string s, char slash = '\\')
{
    return s.TrimEnd(slash) + slash;
}
于 2013-04-12T12:20:11.120 回答