diff --git a/v2rayN/v2rayN/Forms/RoutingRuleSettingDetailsForm.cs b/v2rayN/v2rayN/Forms/RoutingRuleSettingDetailsForm.cs index 1d269af7..38f683cd 100644 --- a/v2rayN/v2rayN/Forms/RoutingRuleSettingDetailsForm.cs +++ b/v2rayN/v2rayN/Forms/RoutingRuleSettingDetailsForm.cs @@ -48,8 +48,8 @@ namespace v2rayN.Forms } rulesItem.inboundTag = inboundTag; rulesItem.outboundTag = cmbOutboundTag.Text; - rulesItem.domain = Utils.String2List(txtDomain.Text); - rulesItem.ip = Utils.String2List(txtIP.Text); + rulesItem.domain = Utils.String2ListSorted(txtDomain.Text); + rulesItem.ip = Utils.String2ListSorted(txtIP.Text); var protocol = new List(); for (int i = 0; i < clbProtocol.Items.Count; i++) diff --git a/v2rayN/v2rayN/Tool/Utils.cs b/v2rayN/v2rayN/Tool/Utils.cs index 52a183ee..a3c11f79 100644 --- a/v2rayN/v2rayN/Tool/Utils.cs +++ b/v2rayN/v2rayN/Tool/Utils.cs @@ -219,6 +219,26 @@ namespace v2rayN } } + /// + /// 逗号分隔的字符串,先排序后转List + /// + /// + /// + public static List String2ListSorted(string str) + { + try + { + str = str.Replace(Environment.NewLine, ""); + List list = new List(str.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)); + return list.OrderBy(x => x).ToList(); + } + catch (Exception ex) + { + SaveLog(ex.Message, ex); + return new List(); + } + } + /// /// Base64编码 ///