如何从字符串中删除“http://”部分?

2024-04-01

我有这个方法:

private List<string> offline(string targetDirectory)
{
    if (targetDirectory.Contains("http://"))
    {
        MessageBox.Show("true");
    }
    DirectoryInfo di = new DirectoryInfo(targetDirectory);
    List<string> directories = new List<string>();

    try
    {
        string[] dirs = Directory.GetDirectories(targetDirectory,"*.*",SearchOption.TopDirectoryOnly);
        for (int i = 0; i < dirs.Length; i++)
        {
            string t = "http://" + dirs[i];
            directories.Add(t);
        }
    }
    catch
    {
        MessageBox.Show("hgjghj");
    }


    return directories;

}

这是这部分:

if (targetDirectory.Contains("http://"))
{
     MessageBox.Show("true");
}

我得到一个目录,它为我提供了该目录中的所有目录,并且我将字符串添加到每个目录中"http://".

问题是下次目录访问它附带的函数时"http://"

例如:http://c:\\ or http://c:\\windows

然后是这条线

 DirectoryInfo di = new DirectoryInfo(targetDirectory); // throws exception.

所以我希望每次目录访问该函数时检查它是否以"http://"一开始,剥离"http://"部分,获取所有目录,然后添加到每个目录"http://"像现在。

我怎样才能删除"http://"?


我会比使用更严格Contains- 我会用StartsWith, 进而Substring:

if (targetDirectory.StartsWith("http://"))
{
    targetDirectory = targetDirectory.Substring("http://".Length);
}

或者将其包装在辅助方法中:

public static string StripPrefix(string text, string prefix)
{
    return text.StartsWith(prefix) ? text.Substring(prefix.Length) : text;
}

我不清楚你为什么要放http://老实说,无论如何作为前缀。我不明白你会如何期望一个前缀为的目录名http://是一个有效的 URL。也许如果您能解释一下为什么这样做,我们可以建议更好的方法。

(另外,我真的希望您的实际代码中没有这样的 try/catch 块,并且通常您遵循 .NET 命名约定。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从字符串中删除“http://”部分? 的相关文章

  • 为什么通过派生类对基类的引用与 :: - 运算符不明确?

    所以我想知道为什么以下钻石问题的代码片段无法编译 我知道这个问题通常是通过虚拟继承来解决的 我不是故意使用它的 该代码只是为了展示我的问题 即为什么编译器称此不明确 因此 我在 struct Base 中声明了两个成员变量 因为这两个子类
  • 编写此代码片段的有效方法是什么? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 更有效和 或更短地重写此代码以节省字节并显得不那么冗长的方法 if N 2 0 N 6 N 8 N 10 N 12 N 14 N 16 N
  • 元组在 VS2012 中如何工作?

    Visual Studio 2012 功能 tuples但不是可变参数模板 这是如何完成的 如何在不使用可变模板的情况下实现元组 简而言之 微软做了与之前在 NET 中实现类似元组的数据类型完全相同的事情 创建许多版本 每个版本都有固定数量
  • 异常堆栈跟踪不显示抛出异常的位置

    通常 当我抛出异常 捕获它并打印出堆栈跟踪时 我会看到抛出异常的调用 导致该异常的调用 导致该异常的调用that 依此类推回到整个程序的根 现在它只向我显示异常所在的调用caught 而不是它所在的地方thrown 我不明白是什么改变导致了
  • 在 ASP.NET MVC 中将模型从视图传递到控制器

    我正在 ASP NET MVC 中开发我的第一个应用程序 但遇到了一个我无法解决的问题 即使在阅读了整个互联网之后也是如此 因此 我有几个使用视图模型创建的视图 它们是报告 这些视图模型是根据用户选择标准填充的 我正在尝试构建一种接受模型并
  • C# 处理标准输入

    我目前正在尝试通过命令行断开与网络文件夹的连接 并使用以下代码 System Diagnostics Process process2 new System Diagnostics Process System Diagnostics Pr
  • C++ 将联合强制转换为其成员类型之一

    以下对我来说似乎完全符合逻辑 但不是有效的 C 联合不能隐式转换为其成员类型之一 有人知道为什么不这样做的充分理由吗 union u int i char c function f int i int main u v v i 6 f v
  • 带有运算符语法的错误消息,但不带有函数语法的错误消息

    为什么我在调用 unary 时收到错误消息 使用运算符语法 如果我用函数语法调用它就可以了 现场演示 https godbolt org z j7AbeQ template
  • 将日期时间转换为指定格式

    我有这个日期格式yy MM dd HH mm ss ex 12 02 21 10 56 09 问题是 当我尝试使用以下代码将其转换为不同格式时 CDate 12 02 21 10 56 09 ToString MMM dd yyyy HH
  • 静态类与类的实例

    我有一个静态类 用于访问我的公共属性 整个应用程序的全局属性 和我在应用程序运行期间使用的方法 例如 我在静态类中设置了一些属性 并且在应用程序运行时我可以从属性中获取值 但我可以使用单例模式创建非静态类并以相同的方式使用它 问题 对于我的
  • 你好,我最近正在开发我的新游戏,我遇到了*无限跳跃*的问题

    所以基本上当我按跳跃 空格键时我会跳跃但是如果我连续按空格键它 只是跳啊跳啊跳等等 我不想要我只想它跳一次 code if Input GetKeyDown space isGrounded velocity y Mathf Sqrt ju
  • Resharper:IEnumerable 的可能多重枚举

    我正在使用新的 Resharper 版本 6 在我的代码中的几个地方 它给一些文本加了下划线 并警告我可能存在IEnumerable 可能的多重枚举 我理解这意味着什么 并在适当的情况下采纳了建议 但在某些情况下 我不确定这实际上是一个大问
  • 无法为 wsdl 文件创建服务引用

    I have wsdl文件和xsd我本地机器上的文件 我想在项目中添加服务引用 我没有网络服务 我只有wsdl file 我收到以下错误 The document was understood but it could not be pro
  • 使用多线程进行矩阵乘法?

    我应该使用线程将两个矩阵相乘 有两件事 当我运行程序时 我不断得到 0 我还收到消息错误 对于每个错误 它在粗体行上显示 警告 从不兼容的指针类型传递 printMatrix 的参数1 我尝试打印输出 还要注意 第一个粗体块 这是我解决问题
  • C# 中的 C/C++ 代码编译器

    在 C 中 我可以使用下面的代码编译 VB 和 C 代码 但无法编译 C C 代码 有什么办法可以做到这一点吗 C 编译器 public void Compile string ToCompile string Result null st
  • EnumDisplayDevices 与 WMI Win32_DesktopMonitor,如何检测活动监视器?

    对于我当前的 C 项目 我需要为在大量计算机上连接并处于活动状态的每个监视器检测一个唯一的字符串 研究指出了两种选择 使用 WMI 并查询 Win32 DesktopMonitor 以获取所有活动监视器 使用 PNPDeviceID 来唯一
  • 将 Swagger 与命名空间版本的 WebApi 结合使用

    我已经找到了如何使用基于名称空间的 WebAPI 版本这个班 https aspnet codeplex com SourceControl changeset view dd207952fa86 Samples WebApi Namesp
  • 使用 C# 动态创建按钮并按预定义的顺序放置它们

    NET 4 5 C 创建 Windows 窗体 我想动态创建和添加按钮并为其分配单击事件 但希望它们以特定的方式动态放置 就像图像一样 我的问题是如何以上述方式动态放置按钮 即 4x4 格式 一行 4 个按钮 4 列 但行数不受限制 是否可
  • SQL Server“未找到网络路径”在不同环境中随机且不频繁地发生

    类似 如果不是同一个问题 随机遇到网络路径未找到异常 https stackoverflow com questions 38696448 network path not found exception encountered rando
  • C++ Boost ASIO 简单的周期性定时器?

    我想要一个非常简单的周期性计时器每 50 毫秒调用我的代码 我可以创建一个始终休眠 50 毫秒的线程 但这很痛苦 我可以开始研究用于制作计时器的 Linux API 但它不可移植 I d like使用升压 我只是不确定这是否可能 boost

随机推荐

  • 多部分/替代子类型,客户端何时使用它?

    为什么网络邮件 如 Gmail 使用以下方式发送 MIME 消息多部分 替代子类型 当用 HTML 编写时 而其他人将 HTML 作为 MIME 发送 其中包含文本 html 部分 不使用替代子类型 The 第5 1 4节 https ww
  • 复杂类型作为数组索引

    array 对象 obj other obj PHP 数组仅适用于标量数据类型 如 int string float boolean null 的索引 我不能像其他语言一样使用对象作为数组索引吗 那么如何实现对象 gt 对象映射呢 虽然我在
  • 在 Rust 中将递归函数转换为迭代器的技术?

    我正在努力将一个简单的递归函数变成一个简单的迭代器 问题在于递归函数在其局部变量和调用堆栈中维护状态 将其转换为 Rust 迭代器意味着基本上将所有函数状态外部化为某些自定义迭代器结构上的可变属性 这是一个相当混乱的尝试 在 javascr
  • Git Pull Force 覆盖本地文件

    Git 拉力 git 将分支重置到原点 或者换句话说 拉取远程分支以覆盖本地分支 似乎是一个被广泛搜索的功能 尽管本地搜索量很少下降 但人们的兴趣却越来越大 对于不断壮大的团队和不断增加的开发人员数量来说 这绝对有意义 目前 最短的工作解决
  • 如何将我的 Magento 迷你搜索表单移动到模板标题中的另一个位置?

    我正在构建我的第一个自定义 Magento 主题 虽然进展缓慢 但是is去 我去掉了主页上最初保存迷你搜索表单的栏 而是想将搜索表单放入新标题中 这是我的标题的代码header phtml div a href title class lo
  • Kafka应用程序启动时无法配置主题,但稍后可以通信

    我们有一个使用 spring kafka 2 2 5 RELEASE 的 Spring Boot 应用程序 在启动时总是出现此错误 Could not configure topics org springframework kafka K
  • 如何对齐指针

    如何将指针与 16 字节边界对齐 我找到了这段代码 不确定是否正确 char p malloc 1024 if unsigned long p 16 0 unsigned char chpoint unsigned char p chpoi
  • pandas 在多列上搜索子字符串

    我有一个 df 这样 c name f name 0 abc abc12 1 xyz abc1 2 mnq mnq2 目标是在两列中找到一个子字符串并知道它属于哪一列 优先选择应该是c name 就像子字符串在两列中一样c name获得优先
  • 学习 XQuery 的简单工具? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我开始玩XQuery 在 w3schools 1 上 这是一个很好的教程 我只是遇到一些问题 我无法测试网站上的内容 我在网上找到了一个X
  • **正确地**从字符串创建 lambda 函数

    给定一个字符串 例如 2 i j lt 100 我想生成相应的lambda函数 fn lambda i j 2 i j lt 100 我可以这样做eval 但我正在寻找一种不那么邪恶的方法 我已经发现 import ast f ast La
  • Firebase 重置密码链接不起作用

    我正在使用 firebase 对我的 Android 应用程序中的用户进行身份验证 我为用户提供了在登录窗口中重置密码的选项 当用户单击按钮时 它会成功发送电子邮件 但是 当用户单击链接时 它总是显示 再次尝试重置密码 您重置密码的请求已过
  • 调用堆栈不说“你从哪里来”,而是说“你下一步要去哪里”?

    在上一个问题中 获取对象调用层次结构 https stackoverflow com questions 6583883 get object call hierarchy 我有这个有趣的答案 https stackoverflow com
  • 如何在 WPF 中拉伸位图而不平滑像素

    我正在开发用 WPF 编写的 SEM 图像处理应用程序 我有一个源自 Canvas 的图像显示控件 它使用 DrawingVisuals 显示图像和叠加层 每个 层 一个 它还使用应用于 DrawingVisuals 的缩放和平移变换来实现
  • 使用Imagemagick,如何裁剪白色背景?

    假设我有一个充满标志的目录 大约 200 个 每个标志都有这个边框 上下 12 像素 左右 1 像素 像这样 我如何使用 imagemagick 来 将每个 PNG 图像从 64x64 裁剪到 60x40 你有自动裁剪 mogrify tr
  • 程序类型已存在:com.google.common.util.concurrent.ListenableFuture 重复类

    我无法构建我的项目 因为我尝试添加的每个新依赖项都会充满新错误 我尝试使用 IDE 将我的项目迁移到 androidx 库 但这并没有解决任何问题 现在我有这些库 dependencies implementation fileTree d
  • 更新虚拟机选项后 Android Studio 无法启动

    我最近在运行 OSX 10 11 的 Mactop pro 上安装了 android studio 使用标准 Apple JRE JDK 我遇到了 IDE 速度慢和模拟器挂起的问题 经过一些研究后 建议我将 VM 选项设置为 Xmx2048
  • Symfony2 Jobeet 教程第 3 天错误无效映射

    当我用代码生成捆绑实体时 php app console doctrine generate entities EnsJobeetBundle 我收到这个错误 学说 通用 持久性 映射 映射异常 类 Ens JobeetBundle Ent
  • NullReferenceException 尝试读取连接字符串

    我有两个项目 一种是 Web 另一种是 Windows 窗体 Web项目连接到数据库 但Windows项目在读取连接字符串时抛出异常NullReferenceException 我使用相同的类来连接两个项目 使用 LINQTOSQL 建立连
  • Visual Studio Code clang 错误:Mac 上的链接器命令失败,退出代码 1

    我是编程新手 想尝试使用 VS Code 进行 C 开发 我收到此错误 但无法在线找到解决方案 clang 错误 链接器命令失败 退出代码为 1 使用 v 查看调用 终端进程终止并退出代码 1 我得到了一个包含函数定义的 cpp 文件和一个
  • 如何从字符串中删除“http://”部分?

    我有这个方法 private List