获取Word文件中,特殊字符标记中间文字。
/// <summary>
/// 获取路径下所有特殊字符包含的数据
/// </summary>
/// <param name="tempFile">文件路径</param>
/// <param name="startstr">开始字符</param>
/// <param name="endstr">结束字符</param>
/// <param name="contractID">合同ID</param>
public void GetWholeString(string tempFile, string startstr, string endstr, int contractID)
{
T_UserInputVariableServer name = new T_UserInputVariableServer();
using (FileStream stream = File.OpenRead(tempFile))
{
XWPFDocument doc = new XWPFDocument(stream);
List<string> ImportString = new List<string>();
List<T_UserInputVariable> userInputVariable = new List<T_UserInputVariable>();
//删除历史变量
name.DeleteList(name.GetListWhere(t => t.contractID == contractID).ToList());
foreach (XWPFParagraph item in doc.BodyElements)
{
ImportString = MidStrEx(item.Text, startstr, endstr);
foreach (var Variable in ImportString)
{
userInputVariable.Add(new T_UserInputVariable()
{
inputVariable = $"{startstr}{Variable}{endstr}",
});
}
}
}
}
获取一个字符串中特殊字符
/// <summary>
/// 获取一个字符串中特殊字符
/// </summary>
/// <param name="sourse">数据源</param>
/// <param name="startstr">开始特殊字符</param>
/// <param name="endstr">结束特殊字符</param>
/// <returns></returns>
public static List<string> MidStrEx(string sourse, string startstr, string endstr)
{
List<string> result = new List<string>();
string endString = sourse;
int startindex, endindex;
try
{
for (int i = 1; i < 10000; i++)
{
startindex = endString.IndexOf(startstr);
if (startindex == -1)
return result;
string tmpstr = endString.Substring(startindex + startstr.Length);
endindex = tmpstr.IndexOf(endstr);
if (endindex == -1)
return result;
string a = tmpstr.Remove(endindex);
result.Add(a);
endString = tmpstr.Substring(endindex + 2);
}
}
catch (Exception ex)
{
//Log.WriteLog("MidStrEx Err:" + ex.Message);
}
return result;
}
Json 字符串 转换为 DataTable数据集合
/// <summary>
/// Json 字符串 转换为 DataTable数据集合
/// </summary>
/// <param name="json"></param>
/// <returns></returns>
public DataTable ToDataTableTwo(string json)
{
DataTable dataTable = new DataTable(); //实例化
DataTable result;
try
{
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
javaScriptSerializer.MaxJsonLength = Int32.MaxValue; //取得最大数值
ArrayList arrayList = javaScriptSerializer.Deserialize<ArrayList>(json);
if (arrayList.Count > 0)