C#上传txt文件问题 本地上传txt、EXcel文件都没问题。但是发布到服务器上上传txt文件出错。在服务器上上传Excel文件也正确!急急!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public List<OrganizationOrder> ImportOrganizationInboundOrders(string fileName) { List<OrganizationOrder> list = new List<OrganizationOrder>(); try { string[] lines = File.ReadAllLines(fileName, Encoding.Default); bool isFirst = true; foreach (string line in lines) { if (isFirst) { isFirst = false; continue; } if (line.Trim().StartsWith("合")) continue; string[] fields = line.Split('\t'); OrganizationOrder order = new OrganizationOrder(); order.OrganizationId = Guid.Empty;// 组织编码 order.OrganizationName = "";// 组织名称 order.SourceOrderId = fields[13]; order.SourceOrderIx = "";//行项目号 order.MoveType = (int)EnumMoveType.Inbound;//移动类型 order.PartnerCode = fields[14]; order.PartnerName = fields[1]; order.MaterialCode = fields[15]; order.MaterialName = fields[2]; order.ApprovalNumber = "";//批准文号 order.MaterialType = "";//药品类型 order.Spec = fields[3]; order.Dosage = "";// 剂型 order.ManufacturerName = fields[4]; order.Price = Decimal.Parse(fields[18]); order.Count = Decimal.Parse(fields[6]); order.Unit = fields[5]; order.Lot = fields[9]; order.ProductDate = "";//生产日期 order.ValidityDate = fields[10]; order.OrderDate = DateTime.Parse(fields[0]); list.Add(order); } return list; } catch (Exception ex) { throw ex; } } Exception 是什么信息呢?调试到哪里出错了? 本地调试没有问题就是发布到服务器上的时候txt文件不报格式不正确!filename是上传文件的名称!!! filename必须是服务器上的路径也就是filename = Server.MapPath("~/xx.txt");FileUpload1.SaveAs(filename )而不是客户端的上传路径 恩 对着呢,我上传Excel文件的时候也是这个,Excel文件就可以正常的导入进去。不知是什么问题呢? 我就纳闷了。 看报告的错误,Excel文件可以,txt也该可以难道这2个不是同一个文件下? 你先确认是没上传上去还是你读取的代码有问题一般情况下if(File.Exists(fileName)){File.ReadAllLines(fileName, Encoding.GetEncoidng("GB2312")); //一般编码确定下。Default不同的机器可能是不同的} 不是权限的问题吧。如果是权限的问题的话那我Excel也应该上传不上去的啊! 我猜,恐怕这个不是上传问题。你看看服务器端的目录下 txt 生成没? 很多都是由于限制 txt 访问出来的假象,这是这样的话 IIS 加一个 mime 注册就好了。 如何打开磁盘上的文件?? 获取Falsh动画播放的时间 急!需要做个组织机构图,谁能提供代码? 请教C#编程思路问题 TabControl控件怎么用 两个子窗体之间如何更改对方的变量的值? 水晶报表分组后如何把其他字段连接在一起? 水晶报表打开时显示“无法打开行集”错误! 请问,如何将二进制图片插入到Sybase数据库? 请教一个字符串判断的问题 c# 两个form同时运行 帮翻译一个断代码,只剩中文处理出错
List<OrganizationOrder> list = new List<OrganizationOrder>(); try {
string[] lines = File.ReadAllLines(fileName, Encoding.Default);
bool isFirst = true; foreach (string line in lines) {
if (isFirst) {
isFirst = false;
continue;
} if (line.Trim().StartsWith("合"))
continue; string[] fields = line.Split('\t'); OrganizationOrder order = new OrganizationOrder(); order.OrganizationId = Guid.Empty;// 组织编码
order.OrganizationName = "";// 组织名称
order.SourceOrderId = fields[13];
order.SourceOrderIx = "";//行项目号
order.MoveType = (int)EnumMoveType.Inbound;//移动类型
order.PartnerCode = fields[14];
order.PartnerName = fields[1];
order.MaterialCode = fields[15];
order.MaterialName = fields[2];
order.ApprovalNumber = "";//批准文号
order.MaterialType = "";//药品类型
order.Spec = fields[3];
order.Dosage = "";// 剂型
order.ManufacturerName = fields[4];
order.Price = Decimal.Parse(fields[18]);
order.Count = Decimal.Parse(fields[6]);
order.Unit = fields[5];
order.Lot = fields[9];
order.ProductDate = "";//生产日期
order.ValidityDate = fields[10];
order.OrderDate = DateTime.Parse(fields[0]); list.Add(order);
}
return list;
}
catch (Exception ex) {
throw ex;
}
}
filename是上传文件的名称!!!
也就是
filename = Server.MapPath("~/xx.txt");
FileUpload1.SaveAs(filename )而不是客户端的上传路径
不知是什么问题呢? 我就纳闷了。
Excel文件可以,txt也该可以
难道这2个不是同一个文件下?
一般情况下
if(File.Exists(fileName))
{
File.ReadAllLines(fileName, Encoding.GetEncoidng("GB2312")); //一般编码确定下。Default不同的机器可能是不同的
}