对路径“xxxxx”的访问被拒绝。

对路径“xxxxx”的访问被拒绝。对路径“D:\\Weixin\\WechatWeb\\wapMxApi\\JsonFile\\WaterPrice.json”的访问被拒绝。本地vs2013编译调试是没有问题的但是发布后就不能倍访问

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

对路径“D:\\Weixin\\WechatWeb\\wapMxApi\\JsonFile\\WaterPrice.json”的访问被拒绝。

 

 

本地vs2013编译调试是没有问题的但是发布后就不能倍访问,找了好久网上的资料各种

解决方法都有,单我的这个问题始终没有解决。很迷。。。。

 

最后发现代码写得不对:

开始我并没有 写

System.IO.Directory.Exists(filePath)
这句话没写其实是很不对的,不去自己检测创建文件路径的话,那么后果就是在发布的时候
每次发布你都要自己新建一个文件加。。。(自己好蠢)
加上文件路径的判断和创建然后发布在服务器上后,重新新建数据写入文件;这时就发现
原来的文件和现在的文件的权限少了=====》 IUSR

所以我想代码创建的文件加权限和手动创建的文件夹的角色权限是不一样的

所以我们尽量避免(可能也只有我这样)不去代码创建文件路径:







        /// <summary>
        /// 单个模型读方法
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="filename"></param>
        /// <returns></returns>
        public static T ReadObjectByJson<T>(string filename)
        {

            if (!System.IO.Directory.Exists(filePath))
            {
                Directory.CreateDirectory(filePath);
            }
            string file = filePath + filename;

            using (FileStream fs = new FileStream(file, FileMode.OpenOrCreate)) {
                using (StreamReader sr = new StreamReader(fs))
                {
                    try
                    {
                        JsonSerializer serializer = new JsonSerializer();
                        using (JsonReader reader = new JsonTextReader(sr)) {
                            return serializer.Deserialize<T>(reader);                      
                        }
  
                    }
                    catch (Exception ex)
                    {
                        ex.Message.ToString();
                        return default(T);
                    }
                }
            }
        }

  

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167220.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • win732位系统怎么安装_windows7可以安装python 什么版本

    win732位系统怎么安装_windows7可以安装python 什么版本win732位系统如何安装pycharm?1.查找安装说明百度找到了PyCharm安装教程(Windows),地址是:https://www.runoob.com/w3cnote/pycharm-windows-install.html按照步骤选择了community社区版的pycharm进行下载安装安装过程中出现如下提示信息:提示信息显示安装pycharm2019.3.1版本…

    2022年8月29日
    3
  • 【剑指offer】二叉树深度

    【剑指offer】二叉树深度

    2021年9月1日
    50
  • navicat for mysql 15 激活码 3月最新注册码「建议收藏」

    navicat for mysql 15 激活码 3月最新注册码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
    572
  • 天气太冷不想出被窝?来DIY一个离线语音控制器[通俗易懂]

    天气太冷不想出被窝?来DIY一个离线语音控制器[通俗易懂]天气太冷不想出被窝?来DIY一个离线语音控制器点击上方“Embeded小飞哥”,选择“置顶/星标公众号”干货福利,第一时间送达!成就一番伟业的唯一途径就是热爱自己的事业。如果你还没能找到让自己热爱的事业,继续寻找,不要放弃。跟随自己的心,总有一天你会找到的。——乔布斯  你去关灯,你去,你去,。。我去。。小伙伴们有没有在天气寒冷时候,想去关灯,却离不开心爱的被窝的经历呢,有的话,跟着小飞哥一起来DIY一个离线语音控制器,有了它,我们

    2022年6月23日
    24
  • Matlab sqrt函数[通俗易懂]

    Matlab sqrt函数[通俗易懂]一、sqrt是计算平方根的函数,比如sqrt(4)=2等等。可以是一个数,也可以是一个矩阵。举例说明:>>sqrt(2)ans=1.4142>>sqrt(rand(4))ans=0.83020.47850.73370.32660.86500.95570.99810.98080.67120.390

    2022年6月8日
    102
  • 微信小程序简洁登录页面(附源码)

    微信小程序简洁登录页面(附源码)微信小程序简洁登录页面 附源码 1 上图 2 用户不存在 3 上代码 3 1login wxml viewclass v1 style height clientHeight clientHeight px auto v2 父容器子 view 使用绝对布局 viewclass v2 viewclass v2 viewclass v1 style height clientHeight clientHeight px auto

    2025年7月21日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号