自定义 Linq 订购

2023-12-30

我有一千多个文件夹,每个文件夹都包含一个或多个具有以下名称的文件:

无序:



Alison.ext
Heather.ext
Molly.ext
Paula.ext
Sam.ext
  

Ordered:



Molly.ext
Sam.ext
Heather.ext
Alison.ext
Paula.ext
  

我想编写一个表达式来按如上所述对该列表进行排序。


//Creating a dictionary with the custom order
var order = "MSHAP";
var orderDict = order.Select((c,i)=>new {Letter=c, Order=i})
                     .ToDictionary(o => o.Letter, o => o.Order);

var list = new List<string>{"A.ext", "H.ext", "M.ext", "P.ext", "S.ext"};

//Ordering by the custom criteria
var result = list.OrderBy(item => orderDict[item[0]]);

您可以使用一个很好的辅助方法来处理边缘情况(不存在的字母、null 等),而不是调用 orderDict[item[0]]。但这就是这个想法。

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

自定义 Linq 订购 的相关文章

  • Directory.Delete 之后 Directory.Exists 有时返回 true ?

    我有非常奇怪的行为 我有 Directory Delete tempFolder true if Directory Exists tempFolder 有时 Directory Exists 返回 true 为什么 可能是资源管理器打开了
  • 确保 StreamReader 不会挂起等待数据

    下面的代码读取从 tcp 客户端流读取的所有内容 并且在下一次迭代中它将仅位于 Read 上 我假设正在等待数据 我如何确保它不会在没有任何内容可供读取时返回 我是否必须设置低超时 并在失败时响应异常 或者有更好的办法吗 TcpClient
  • 提交后禁用按钮

    当用户提交付款表单并且发布表单的代码导致 Firefox 中出现重复发布时 我试图禁用按钮 去掉代码就不会出现这个问题 在firefox以外的任何浏览器中也不会出现这个问题 知道如何防止双重帖子吗 System Text StringBui
  • 单个对象的 Monogame XNA 变换矩阵?

    我读过一些解释 XNA Monogame 变换矩阵的教程 问题是这些矩阵应用于 SpriteBatch Begin matrix 这意味着所有 Draw 代码都将被转换 如何将变换矩阵应用于单个可绘制对象 就我而言 我想转换滚动背景 使其自
  • 如何创建包含 IPv4 地址的文本框? [复制]

    这个问题在这里已经有答案了 如何制作一个这样的文本框 我想所有的用户都见过这个并且知道它的功能 您可以使用带有 Mask 的 MaskedTestBox000 000 000 000 欲了解更多信息 请参阅文档 http msdn micr
  • 如何使用 LINQ2SQL 连接两个不同上下文的表?

    我的应用程序中有 2 个数据上下文 不同的数据库 并且需要能够通过上下文 B 中的表的右连接来查询上下文 A 中的表 我该如何在 LINQ2SQL 中执行此操作 Why 我们正在使用 SaaS 产品来跟踪我们的时间 项目等 并希望向该产品发
  • 由 IHttpClientFactory 注入时模拟 HttpClient 处理程序

    我创建了一个自定义库 它会自动为依赖于特定服务的 Polly 策略设置HttpClient 这是使用以下方法完成的IServiceCollection扩展方法和类型化客户端方法 一个简化的例子 public static IHttpClie
  • 将 Word 文档另存为图像

    我正在使用下面的代码将 Word 文档转换为图像文件 但是图片显得太大 内容不适合 有没有办法渲染图片或将图片保存到合适的尺寸 private void btnConvert Click object sender EventArgs e
  • 我可以使用 moq Mock 来模拟类而不是接口吗?

    正在经历https github com Moq moq4 wiki Quickstart https github com Moq moq4 wiki Quickstart 我看到它 Mock 一个接口 我的遗留代码中有一个没有接口的类
  • 使用自定义堆的类似 malloc 的函数

    如果我希望使用自定义预分配堆构造类似 malloc 的功能 那么 C 中最好的方法是什么 我的具体问题是 我有一个可映射 类似内存 的设备 已将其放入我的地址空间中 但我需要获得一种更灵活的方式来使用该内存来存储将随着时间的推移分配和释放的
  • CMake 无法确定目标的链接器语言

    首先 我查看了this https stackoverflow com questions 11801186 cmake unable to determine linker language with c发帖并找不到解决我的问题的方法 我
  • 动态添加 ASP.Net 控件

    我有一个存储过程 它根据数据库中存储的记录数返回多行 现在我想有一种方法来创建 div 带有包含该行值的控件的标记 如果从数据库返回 10 行 则 10 div 必须创建标签 我有下面的代码来从数据库中获取结果 但我不知道如何从这里继续 S
  • Cmake 链接共享库:包含库中的头文件时“没有这样的文件或目录”

    我正在学习使用 CMake 构建库 构建库的代码结构如下 include Test hpp ITest hpp interface src Test cpp ITest cpp 在 CMakeLists txt 中 我用来构建库的句子是 f
  • C++ 函数重载类似转换

    我收到一个错误 指出两个重载具有相似的转换 我尝试了太多的事情 但没有任何帮助 这是那段代码 CString GetInput int numberOfInput BOOL clearBuffer FALSE UINT timeout IN
  • 按 Esc 按键关闭 Ajax Modal 弹出窗口

    我已经使用 Ajax 显示了一个面板弹出窗口 我要做的是当用户按 Esc 键时关闭该窗口 这可能吗 如果有人知道这一点或以前做过这一点 请帮助我 Thanks 通过以下链接 您可以通过按退出按钮轻松关闭窗口 http www codepro
  • 调用堆栈中的“外部代码”是什么意思?

    我在 Visual Studio 中调用一个方法 并尝试通过检查调用堆栈来调试它 其中一些行标记为 外部代码 这到底是什么意思 方法来自 dll已被处决 外部代码 意味着该dll没有可用的调试信息 你能做的就是在Call Stack窗口中单
  • 如果没有抽象成员,基类是否应该标记为抽象?

    如果一个类没有抽象成员 可以将其标记为抽象吗 即使没有实际理由直接实例化它 除了单元测试 是的 将不应该实例化的基类显式标记为抽象是合理且有益的 即使在没有抽象方法的情况下也是如此 它强制执行通用准则来使非叶类抽象 它阻止其他程序员创建该类
  • 无法接收 UDP Windows RT

    我正在为 Windows 8 RT 编写一个 Windows Store Metro Modern RT 应用程序 需要在端口 49030 上接收 UDP 数据包 但我似乎无法接收任何数据包 我已按照使用教程进行操作DatagramSock
  • 使用 .NET Process.Start 运行时挂起进程 - 出了什么问题?

    我在 svn exe 周围编写了一个快速而肮脏的包装器来检索一些内容并对其执行某些操作 但对于某些输入 它偶尔会重复挂起并且无法完成 例如 一个调用是 svn list svn list http myserver 84 svn Docum
  • 如何将 PostgreSql 与 EntityFramework 6.0.2 集成? [复制]

    这个问题在这里已经有答案了 我收到以下错误 实体框架提供程序类型的 实例 成员 Npgsql NpgsqlServices Npgsql 版本 2 0 14 2 文化 中性 PublicKeyToken 5d8b90d52f46fda7 没

随机推荐

  • Bootstrap 网格中列行的垂直对齐

    假设您有一个使用 Twitter Bootstrap 的两列布局 您希望其中特定的行彼此垂直对齐 div class container div class row div class col sm 6 h2 Column 1 h2 p O
  • 将一列类似 GeoJSON 的字符串转换为 GeoPandas 中的几何对象

    我在 GeoPandas 数据框中有一列 其中包含这样的字符串 type Point coordinates 37 55 55 71 或这个 type MultiPoint coordinates 37 6 55 4 它也可以是多边形或任何
  • iOS - 使用自定义加密密钥保护文件?

    昨天我发布了有关保护文件的问题 保护应用程序沙箱 https stackoverflow com questions 4595955 protecting the app sandbox 如前所述 如果用户在 iPad 上有密码 这似乎可以
  • jQuery:获取标题和 href 值作为变量

    我有一个带有标题和 href 值的链接列表 我希望能够单独获取这些值 但我总是获取第一个链接的值 这是为什么 在这里看我的小提琴 http jsfiddle net FaNdV 正如您所看到的 单击任何链接时 您始终会从第一个链接获取值 我
  • 带有自定义图像的 UISwitch

    我需要通过更改背景颜色以及旋钮 支架 图像来自定义 UISwitch 如下图所示 是否可以在不拒绝应用程序的情况下自定义 UISwitch 提前致谢 有一个onTintColor您可以在 UISwitch 上设置的属性 如果您还需要更改手柄
  • 根据布尔列升序或降序

    This is the table structure in PostgreSQL 10 尽管 日期 是一个int 它代表 yyyy mm dd 日期 我正在尝试写一个SELECT按日期排序 当 BC true 时desc 因此日期将按正确
  • Flutter:使用不包含 Bloc 类型的上下文调用 blocprovider.of()

    我是 flutter 新手 我想使用 BLoc 实现一个简单的登录屏幕 没有构建错误 但在运行时收到以下错误 使用不包含 LoginBloc 类型的 Bloc 的上下文调用 blocprovider of My Code class Log
  • Julia 中的字典帮助 - 从文本文件创建字典

    我正在尝试根据 Julia 中文本文件的内容创建一个库 以用于生物信息学问题 该文件的格式如下 UUU F CUU L AUU I GUU V UUC F CUC L AUC I GUC V 我想制作一本字典 其中键是 3 个字母部分 密码
  • 在表单之间传递数据

    我的项目中有 3 个 winform Form3 上有一个复选框 我想要做的是单击此复选框 然后在退出表单时对 Form1 中的复选框进行相同的检查 无论是否选中 我现有的代码如下 但它不起作用 我是否在某个地方错过了一个技巧 谢谢 For
  • Nat 列表在 0 到 2 之间的类?

    使用 Peter Neyens 的帮助answer https stackoverflow com a 39159167 409976 我尝试创建一个X类仅包含Nat小于或等于2 import shapeless import shapel
  • MongoDB 与 Mongoose 限制子文档

    对于 MongoDB 和 Mongoose 我是个菜鸟 所以请原谅我 我将 Node 与 Express 以及 Mongoose 一起使用 我有一个包含大量子文档的文档 以至于我的服务器在尝试加载所有子文档时内存不足 所以我想选择子文档的最
  • 无法解决排序规则冲突?

    我遇到了这个错误 但我不知道如何修复它 无法解决 Arabic CI AS 和 Arabic CI AS 之间的排序规则冲突 等于操作中的 SQL Latin1 General CP1 CI AS 注意 我已经从数据库选项更改了排序规则 g
  • mvc3 验证检查属性值是否不同

    在 MVC3 中 您可以向模型添加验证以检查属性是否匹配 如下所示 public string NewPassword get set Compare NewPassword ErrorMessage The new password an
  • Pytest 从不同的测试用例文件中排序

    您好 我使用 pytest 并在文件夹中有以下 2 个 py 文件 test abc py如下 class MyTest unittest TestCase classmethod def setup class cls cls a 10
  • Rails + Mongoid - 不要在 JSON 中返回 nil 值

    我在 Mongoid 中有很多可选字段 例如 field key type String field element type String field rect type Array 如果我返回此模型的 json 其中仅填充其中一个 我会
  • 在 Archlinux 上无法找到或加载 Qt 平台插件“xcb”(Write!AppImage)

    正在尝试安装写入 Arch Linux 上安装了 qt5 freetype2 2 9 1 和 fontconfig 2 2 13 1 12 g5f5ec56 1 的 AppImage levi astize Write write This
  • 如何使用 GCD 在后台定期运行代码块?

    如何使用 GCD 在后台定期运行代码块 我正在尝试编写一个具有多个子系统的游戏引擎 例如渲染 物理 游戏逻辑等 有些任务应该是事件驱动的 但有些任务 如物理系统 应该在后台以恒定的时间 例如 1 100 秒后 定期调用 我创建了一个代码块
  • 实现无限循环时,使用 while(1) 与 for(;;) 与 goto (在 C 中)有区别吗?

    实现无限循环时 使用有什么区别while 1 vs for vs goto 谢谢 陈兹 即使您关闭优化器 它们也是等效的 Example include
  • 如何使用 Gmail API 检索电子邮件正文内容?

    我正在研究 Gmail API 假设我有兴趣查看哪封邮件包含字符串 foobar2000 到目前为止 这是我的代码 主程序 java package manhattan email bot import com google api cli
  • 自定义 Linq 订购

    我有一千多个文件夹 每个文件夹都包含一个或多个具有以下名称的文件 无序 Alison ext Heather ext Molly ext Paula ext Sam ext Ordered Molly ext Sam ext Heather