C#中的几个实用的代码
创建xml对应的对象类
根节点,对应类名
[XmlRoot("ComponentLog ")]
public class ComponentLog{
}
其他节点,对应属性名
[XmlElement("LogCategory")]
public string logCategory { get; set; }
也可以对应集合(如果同一节点有多个的话)
[XmlElement("LogContent")]
public List<LogContent> logContent { get; set; }
节点里的内容
[XmlAttribute("Content")]
public string content { get; set; }
XML文件:
<?xml version="1.0" encoding="utf-8"?>
<ComponentLog>
<LogCategory>Sign</LogCategory>
<LogContent>
<Key>1</Key>
<ContentCaption Content="内容1" VariableName=""/>
<ContentDetail Content="内容2" VariableName="" />
</LogContent>
<LogContent>
<Key>2</Key>
<ContentCaption Content="内容3" VariableName=""/>
<ContentDetail Content="内容4" VariableName="" />
</LogContent>
</ComponentLog>
窗体中打开文件夹
FolderBrowserDialog folderBrowser = new FolderBrowserDialog();
if (folderBrowser.ShowDialog() == DialogResult.OK)
{
txtFolderPath.Text = folderBrowser.SelectedPath;
}
窗体中跨线程调用组件(控件)
/// <param name="textBox">文本框</param>
/// <param name="strText">要显示的内容</param>
private void ShowText(TextBox textBox, String strText)
{
if (this.InvokeRequired)
{
this.Invoke((MethodInvoker)delegate () { ShowText(textBox, strText+"\r\n"); });
}
else
{
textBox.Text += DateTime.Now + " " + strText+"\r\n";
}
}
关闭窗口,退出所有进程
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
System.Environment.Exit(0);
}
将文本框的滚动条一直处于最低端
private void txtReceive_TextChanged(object sender, EventArgs e)
{
txtReceive.SelectionStart = txtReceive.Text.Length;
txtReceive.ScrollToCaret();
}
连接字符串
//str1不为空,就将str1和“ ”连接
string journalString = str1 != string.Empty ? string.Concat(str1, " ") : string.Empty;
获得程序运行目录下指定文件的路径
string xmlPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "JournalLog\\123.xml");
获取指定的编码格式
Encoding gb2312 = Encoding.GetEncoding("GB2312");
按照指定编码格式读取文本内容
string strRead = File.ReadAllText(xmlPath,Encoding.Default);
按照指定编码格式转换已经读取到的文本内容
//sendByte是字节,将其转换成string
string strSendData = gb2312.GetString(sendByte);
或者string strSendData = Encoding.UTF8.GetString(sendByte);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2016-09-28 Jquery和JS获取ul中li标签(转)