技術筆記:字串、List、陣列、日期等常見操作方法
阿新 • • 發佈:2019-01-23
string類
string s="ABC科學";int i=s.IndexOf("科");//字串的搜尋。
int n=string.Compare(s1,s2);//n=0則兩個相同。n< 0,s1 < s2。
string s="取得成功!";char sb=s[0];//sb="取"
s.remove(0,2);//從索引為0開始刪除2個字元
s.Insert(0,"我");//我取得成功!
s.Replace("取","獲");//我獲得成功!
s.Trim();//刪除首、尾的空格
string s = "a-b-c";
string[] ar = s.Split('-');
string v = "ac---b1---c2---d2" ;
string[] r = v.Split(new string[] { "---" }, StringSplitOptions.None);//以“---”來分隔
string[] r3 = DateTime.Now.ToString().Split(new char[] { '.', ':', '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);//去掉空格(只剩下數字)
string[] r2 = DateTime.Now.ToString().Split('.', '-', ':');//傳可變引數,實現分割日期只剩下數字
/*陣列中是否存在某個值,第一種方法*/
int[] ia = {1,2,3};
int id = Array.IndexOf(ia,2); // 這裡的1就是你要查詢的值
if(id==-1)
// 不存在
else
// 存在
/*陣列中是否存在某個值,第二種方法*/
string[] strArr = {"a","b","c","d","e"};
bool exists = ((IList)strArr).Contains("a");
if(exists)
// 存在
else
// 不存在
string str = "";
bool s=string.IsNullOrEmpty(str);//字串是否為null or empty
bool l= string.IsNullOrWhiteSpace(str);//字串是否為null or 空格(包含上面方法的作用,推薦使用)
str.IndexOf('t');
str.IndexOf("test");
str.LastIndexOf('t');
str.LastIndexOf('t');
char[] char1={'a','b','c'};
str.IndexOfAny(char1);//返回第一次出現數組中字元的位置
str.StartsWith("http");//開頭是否與指定的字串匹配
str.Contains("com");//子串是否出現在字串中
/*string.Join將集合拼接成有特定分隔的字串*/
List<string> list = new List<string>(){"1","2","3"};
if (list.Count > 0)
{
Console.WriteLine(string.Join(" and ", list.ToArray()));//返回:1 and 2 and 3
}
- 有這樣場景:變數a是string要轉數字型,但是a有可能是空格即“a=""”,解決辦法在前加上0(int.Parse(“0”+a))就避免了空格轉數字發生異常的問題。
List類
- 陣列賦值給List集合:
int[] numStr={1,2,3};
List<int> list1=new List<int>(numStr);
陣列
DateTime
- 可用“>”比較大小,可用“-”求時間差:
string[] arry=(dt1-dt2).ToString().Split(new char[]{'.',':'},StringSplitOptions.RemoveEmptyEntries)//得到兩天相差的“x天x時x分x秒”
TimeSpan span=dt1.Subtract(dt2);//dt2比dt1相差的“x天x時x分x秒”
- 數字
C#保留2位小數,(1.29922).ToString(“f2”)或(1.29922).ToString(“0.00”) ,都返回“1.30”而且四捨五入喲!更多“ToString用法”
####路徑
this.GetType().Assembly.Location //返回當前aspx頁面編譯成的dll檔案路徑,如:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\6e42fc95\44752f87\App_Web_dmuclngz.dll
Server.MapPath("Login1.aspx") //返回檔案物理路徑 E:\00Code\Login1.aspx
AppDomain.CurrentDomain.BaseDirectory.ToString() //返回檔案物理路徑不含檔案本身 E:\00Code\
Path.GetTempPath() //返回系統臨時資料夾路徑 C:\WINDOWS\TEMP\