【问题标题】:What type of error is this Error: ENOENT: no such file or directory, open这是什么类型的错误 Error: ENOENT: no such file or directory, open
【发布时间】:2016-04-22 23:34:59
【问题描述】:

我遇到了这个错误,无法解决这个问题。

错误:ENOENT:没有这样的文件或目录,打开 'C:\Users\sagarkumar\AppData\Loca l\Temp;C:\Program Files\Java\jdk1.7.0_51\bin\8852-120drlh.jpg'

This is app.js file

var express  = require('express');
var connect = require('connect');
var app      = express();
var port     = process.env.PORT || 8080;

// Configuration
app.use(express.static(__dirname + '/public'));
app.use(connect.cookieParser());
app.use(connect.logger('dev'));
app.use(connect.bodyParser());

app.use(connect.json());
app.use(connect.urlencoded());

// Routes

require('./routes/routes.js')(app);


app.listen(port);
console.log('The App runs on port ' + port);

这是 route.js 文件

var fs = require('fs');
module.exports = function(app) {

app.get('/',function(req,res){
res.end("Node-File-Upload");

});
/*
 app.post('/upload', function(req, res) {

console.log(req.files.image.originalFilename);
console.log(req.files.image.path);
fs.readFile(req.files.image.path, function (err, data){
var dirname = "sagar/";
var newPath = dirname + "/uploads/" +   req.files.image.originalFilename;
    fs.writeFile(newPath, data, function (err) {
    if(err){
    res.json({'response':"Error"});
    }else {
    res.json({'response':"Saved"});

}
}); 
});
*/

app.post('/upload', function(req, res) {

res.json({'response':"Saved"});

}
);

这是 android 代码(客户端)发出 json 请求(仅请求部分)。 有选择按钮从图库中选择图像和上传按钮向nodejs服务器发出请求。

 upload.setOnClickListener(new View.OnClickListener() {
 @Override
 public void onClick(View v) {
      File f = new File(path);
      Future uploading = Ion.with(nodejs.this)
           .load("http://192.168.0.101:8080/upload")
           .setMultipartFile("image",f)
            .asString()
            .withResponse()
            .setCallback(new FutureCallback<Response<String>>() {
            @Override
            public void onCompleted(Exception e,             Response<String> result) {
             try {
                JSONObject jobj = new JSONObject(result.getResult());
               } 
             catch (JSONException e1) {
                 e1.printStackTrace();
                 }

                 }
                 });
        }

    }); 

【问题讨论】:

  • 首先你需要解释在哪里你会得到这个错误。如果它是通过 Android 设备上的 logcat 来的,则存在严重的编程错误,因为以“C:\”之类的 Windows 路径开头的任何内容都与 Android 无关。如果它来自您的 IDE 或在 Windows 开发机器上运行的工具,则可能是安装或项目目录损坏的问题。或者它甚至可能是一个“非错误”错误,即无论如何交付的未完成代码中遗留的问题,因为该错误不会阻止事情的工作(遗憾的是并不罕见)

标签: android node.js


【解决方案1】:

文件 C:\Users\sagarkumar\AppData\Local\Temp;C:\Program Files\Java\jdk1.7.0_51\bin\8852-120drlh.jpg 不存在。看起来您将两个文件名附加在一起。

【讨论】:

  • 我没有得到你,甚至没有得到这个错误。在我的代码中,我既没有更新任何路径,也没有提到。
  • ENOENT 表示无实体错误。换句话说,没有文件。下一部分是它要查找的文件的名称。在这种情况下,我复制粘贴的那个复杂的损坏路径。
  • 没关系。当你告诉它打开一个文件时,它会打开一个文件。您的代码需要知道数据的含义,对于操作系统而言,文件就是文件。
  • 我已经评论了路由文件中代码中提到的路径部分,它仍然给出错误。
【解决方案2】:

ENOENT = 错误 NO ENTity。

您的文件有问题,可能是您的路径错误或文件名,但请确定问​​题出在您的文件上。

【讨论】:

    猜你喜欢
    • 2017-08-23
    • 1970-01-01
    • 2020-06-15
    • 1970-01-01
    • 1970-01-01
    • 2017-02-08
    • 2022-12-01
    • 2018-11-06
    • 2012-06-20
    相关资源
    最近更新 更多