显示数据库中的图像,该图像在颤动的路径中具有反斜杠而不是斜杠

发布于 2025-01-11 11:32:04 字数 699 浏览 0 评论 0原文

我将图像保存在数据库中,地址中使用反斜杠(\),如下所示:

\image\carimage\2021_123test.jpg

好的,当我想在 flutter 中的 Image.network('imageurl') 中显示它时,不可能显示这一点,由于路径中存在反斜杠,我从数据库 maunulay 更新 iamge 之一,如下所示

/image/carimage/2021_123test.jpg

它工作正常。在网页中,我可以看到具有先前路径的图像,但在颤动中我必须更改路径,如何动态地执行此操作

更新:

 return Scaffold(
  appBar: AppBar(
    title: const Text('car pro '),
  ),
  body: controller.obx(
    (data) => Center(
      child: (Card(
        child: Column(
          children: [
            Image.network('http://mywebsite.com/' + data!['image']),

          ],
        ),
      )),
    ),
  ),
);

I save my image in database with backslash (\) in address like this:

\image\carimage\2021_123test.jpg

Ok, when I want to show it in Image.network('imageurl') in flutter it is not possible to show that, because of backslash in path, I update one of iamge from database maunulay like this

/image/carimage/2021_123test.jpg

It work fine. In webpage I can see my images with previous path but in flutter I must change path, how can I do that dynamically

Update:

 return Scaffold(
  appBar: AppBar(
    title: const Text('car pro '),
  ),
  body: controller.obx(
    (data) => Center(
      child: (Card(
        child: Column(
          children: [
            Image.network('http://mywebsite.com/' + data!['image']),

          ],
        ),
      )),
    ),
  ),
);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

时光病人 2025-01-18 11:32:04

您可以使用 replaceAll< 替换所有反向间隙/a> 方法:

String newImage = image.replaceAll(r'\', r'/');

编辑:

此解决方案不起作用,因为您的图像路径需要是原始字符串,或包含双反斜杠 (\\)。请参阅此问题。但是,如果在数据库中创建图像路径时添加双反斜杠,则可以使用:

Image.network("http://mywebsite.com/" +
                    data!['image'].replaceAll(r'\', r'/'))

You can replace all backlashes with the replaceAll method:

String newImage = image.replaceAll(r'\', r'/');

Edit:

This solution wouldn't work since your image path would need to be a raw string, or contain double backlashes (\\). See this question. But if you add a double backslash to your image path when creating it in the database, then you can use:

Image.network("http://mywebsite.com/" +
                    data!['image'].replaceAll(r'\', r'/'))
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文