當我們將txt文件添加到程序中時,需要讀取里面的數據並使用,我的思路是先確定txt文件中的路徑,在使用streamreader關鍵字來讀取數據並使用。首先txt已經添加到程序中,我使用這種方法來獲取文件路徑
string tpath=System.IO.path.GetDirectoryName(System.Reflection.ASSembly.GetExecutingAssembly().ManifestModule.FullyQualifiedName)+"\\ConfigText.txt";
或者是System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.FullyQualifiedName) + @"\ConfigText.txt";
這兩種方法來獲取文件路徑。
若是確定路徑沒錯則不用判斷路徑是否存在,否則
public class name
{
public string ApiName { get; set; }
/// <summary>
/// 接口地址
/// </summary>
public string ApiServerHost { get; set; }
/// <summary>
/// 接口端口
/// </summary>
public string ApiServerPort { get; set; }
/// <summary>
/// 獲取機台信息
/// </summary>
public string API_GetMacInfo { get; set; }
/// <summary>
/// 原料入庫接口
/// </summary>
public string API_MaterialIn { get; set; }
/// <summary>
/// 獲取人員信息接口
/// </summary>
public string API_GetStaffInfo { get; set; }
/// <summary>
/// 通過工裝查找周轉卡信息接口
/// </summary>
public string API_ToolCardQuery { get; set; }
/// <summary>
/// 新條碼查詢機台明細
/// </summary>
public string API_queryMachineTest { get; set; }
/// <summary>
/// 選定的工廠種類
/// </summary>
public string PlantType { get; set; }
/// <summary>
/// 全部工廠種類
/// </summary>
public string AllPlantType { get; set; }
/// <summary>
/// 更新周轉卡接口
/// </summary>
public string API_UpdateTurnCard { get; set; }
/// <summary>
/// 獲取膠料周轉卡信息接口
/// </summary>
public string API_GetRubberTurnCard { get; set; }
/// <summary>
/// 通過周轉卡編號查找周轉卡信息接口
/// </summary>
public string API_TurnOverCardQuery { get; set; }
/// <summary>
/// 膠料消耗接口
/// </summary>
public string API_RubberTurnCardConsume { get; set; }
/// <summary>
/// 機台實驗綁定接口
/// </summary>
public string API_bindingMachineTest { get; set; }
/// <summary>
/// 輪胎實驗綁定接口
/// </summary>
public string API_bindingNewBarCode { get; set; }
/// <summary>
/// 獲取搬運任務列表接口
/// </summary>
public string API_GetCarryTaskList { get; set; }
/// <summary>
/// 預約搬運單(搶單)接口
/// </summary>
public string API_GetCarryTask { get; set; }
/// <summary>
/// 更新搬運單接口
/// </summary>
public string API_CarryTaskUpdate { get; set; }
/// <summary>
/// 庫位更新接口
/// </summary>
public string API_StorageLocUpdate { get; set; }
/// <summary>
/// 更新工裝接口
/// </summary>
public string API_StToolsUpdate { get; set; }
/// <summary>
/// 庫位查詢接口
/// </summary>
public string API_StockQuery { get; set; }
/// <summary>
/// 出入庫接口
/// </summary>
public string API_InOut { get; set; }
/// <summary>
/// 盤庫接口
/// </summary>
public string API_CheckStock { get; set; }
/// <summary>
/// 鋼絲查詢接口
/// </summary>
public string API_QuerySteel { get; set; }
/// <summary>
/// 鋼絲消耗接口
/// </summary>
public string API_SteelUse { get; set; }
}
}
public name getmessage(string path)
{
using(steamread sd=new streamread(path,encoding.default))//若txt文件中出現中文則需要encoding.default,否則可以不寫,這句話的意思就是創建一個讀取流讀取數據
{
streambulider sb=new streambuilder()//創建實例,若配置文件這種使用streambuilder,和string差不多,請自己去看兩者區別
{
while(!sd.endofstream)//判斷是否讀完
{
sb.append(sd.readline());//將txt數據添加到sb中,其數據類型是stringbulider
}
return sb.tosring.toobj<name>();//類型轉換請借鑒jsonhelper百度就有
}
這是我txt文件的內容,則可以改變配置文件的來改變url,不用通過程序去改變。
"ApiName":"jfly.openapi","ApiServerHost" : "171.188.96.88","ApiServerPort" : "80","PlantType":"半制品","AllPlantType":"半制品,成型,鋼絲","API_GetMacInfo" : "machine/query/v1","API_MaterialIn" : "job/materialIn/v1","API_GetStaffInfo" : "base/userQuery/v1","API_ToolCardQuery" : "job/toolTCardQuery/v1","API_UpdateTurnCard" : "job/turnoverCardUpdate/v1","API_TurnOverCardQuery" : "job/turnoverCardQuery/v1" ,"API_GetRubberTurnCard" : "matrk/rubber/v1","API_bindingMachineTest":"quality/bindingMachineTest/v1" ,"API_queryMachineTest":"quality/queryMachineTest/v1" ,"API_bindingNewBarCode":"quality/bindingNewBarCode/v1" ,"API_RubberTurnCardConsume" : "matrk/rubberChild/v1","API_GetCarryTaskList" : "pad/carryTaskList/v1","API_GetCarryTask" : "pad/carryTaskGet/v1","API_CarryTaskUpdate" : "pad/carryTaskUpdate/v1","API_StorageLocUpdate" : "pad/storageLocUpdate/v1","API_StToolsUpdate" : "pad/stToolsUpdate/v1","API_StockQuery" : "pad/stockQuery/v1","API_InOut" : "pad/inout/v1","API_CheckStock" : "pad/checkStock/v1","API_QuerySteel":"job/findGsStock/v1","API_SteelUse":"job/materialOut/v1"