public List<string> UploadZPT(List<OperationModel.Return.Order.GetZptUploadData> zPTRequestDataList)
{
List<string> uploadSubIdList = new List<string>();
string projectPath = AppDomain.CurrentDomain.BaseDirectory;
string fileName = $"客戶代碼_{DateTime.Now.ToString("yyyyMMdd")}_{DateTime.Now.ToString("HHmmss")}.txt";
string filePath = $"{projectPath}ZPXText\\{DateTime.Now.ToString("yyyyMMdd")}\\{fileName}.txt";
try
{
if (DirFileHelper.IsExistFile(filePath))
{
DirFileHelper.ClearFile(filePath);
}
StringBuilder sb = new StringBuilder();
if (!Equals(zPTRequestDataList, null) && zPTRequestDataList.Count() > 0)
{
string idStr = string.Empty;
int idCount = 0;
foreach (var item in zPTRequestDataList)
{
#region 设置本地文件存储位置
var rowNumber = idCount >= 1 ? 1 : 0;
fileName = $"{item.Customer}_{DateTime.Now.ToString("yyyyMMdd")}_{DateTime.Now.ToString("HHmmss")}.TXT";
filePath = $"{projectPath}ZPXText\\{DateTime.Now.ToString("yyyyMMdd")}\\{fileName}";
#endregion
sb.Append(AlignmentStrFunc(item.ReceivePhone, 32));
sb.Append(AlignmentStrFunc("第二列数据", 10));
sb.Append(AlignmentStrFunc("第三列数据", 80));
sb.Append(AlignmentStrFunc("第四列数据", 20));
sb.Append(AlignmentStrFunc("第五列数据", 30));
sb.Append("\r\n");
}
DirFileHelper.CreateFileContent(filePath, sb.ToString(), "big5");
}
}
catch (Exception ex)
{
// 写日志
string h = string.Empty;
}
return uploadSubIdList;
}
///<summary>
///将字符串生转化为固定长度左对齐,右补空格
///</summary>
///<paramname="strTemp"></param>需要补齐的字符串
///<paramname="length"></param>补齐后的长度
///<returns></returns>
private string AlignmentStrFunc(string strTemp, int length)
{
byte[] byteStr = System.Text.Encoding.Default.GetBytes(strTemp.Trim());
int iLength = byteStr.Length;
int iNeed = length - iLength;
byte[] spaceLen = Encoding.Default.GetBytes(" "); //一个空格的长度
iNeed = iNeed / spaceLen.Length;
string spaceString = SpaceStrFunc(iNeed);
return strTemp + spaceString;
}
#region 检测指定文件是否存在,如果存在则返回true。
/// <summary>
/// 检测指定文件是否存在,如果存在则返回true。
/// </summary>
/// <param name="filePath">文件的绝对路径</param>
public static bool IsExistFile(string filePath)
{
return File.Exists(filePath);
}
#endregion
#region 创建文件
/// <summary>
/// 创建文件
/// </summary>
/// <param name="path">绝对路径</param>
/// <param name="content">内容</param>
/// <param name="encoding">编码格式</param>
public static void CreateFileContent(string path, string content, string encoding)
{
FileInfo fi = new FileInfo(path);
var di = fi.Directory;
if (!di.Exists)
{
di.Create();
}
StreamWriter sw = new StreamWriter(path, false, System.Text.Encoding.GetEncoding(encoding));
sw.Write(content);
sw.Close();
}
#endregion
08-11
1040