找回密码
 立即注册

QQ登录

只需一步,快速开始

诗仙·1957
金牌服务用户   /  发表于:2023-4-22 16:52  /   查看:4595  /  回复:19
1金币
如题,已知豪哥的文件到bash64,再bash64解密就能得到文本内容,但gbk的文本读取是乱码。
还有什么插件能支持吗

最佳答案

查看完整内容

实在是没人管这个插件,好吧,让机器人整个了简单的读取服务器上的文本文件,返回文本内容 以下是c#完整代码,支持ANSI编码的文本,当前测试windows服务器没发现问题,有条件的测试一下linux服务器, using GrapeCity.Forguncy.ServerApi; using Microsoft.AspNetCore.Components.Forms; using System.IO; using System.Text; using System.Text.Json; namespace MYAPI { public class MyAPI : ForguncyApi ...

19 个回复

倒序浏览
最佳答案
最佳答案
诗仙·1957
金牌服务用户   /  发表于:2023-4-22 16:52:34
来自 7#
本帖最后由 诗仙·1957 于 2023-4-24 17:06 编辑

实在是没人管这个插件,好吧,让机器人整个了简单的读取服务器上的文本文件,返回文本内容
以下是c#完整代码,支持ANSI编码的文本,当前测试windows服务器没发现问题,有条件的测试一下linux服务器,


using GrapeCity.Forguncy.ServerApi;
using Microsoft.AspNetCore.Components.Forms;
using System.IO;
using System.Text;
using System.Text.Json;

namespace MYAPI
{
    public class MyAPI : ForguncyApi
    {
        [Post]
        public async Task TestPostAPI()
        {
            var requestBody = await new StreamReader(Context.Request.Body).ReadToEndAsync();
            var input = "";
            if (!string.IsNullOrEmpty(requestBody))
            {
                var json = JsonDocument.Parse(requestBody);
                input = json.RootElement.GetProperty("input").GetString(); // 获取传入的参数字符串
            }

            var output = ""; // 定义输出结果字符串

            // 在此处编写你的代码逻辑,将结果存储在output变量中
            if (File.Exists(input))
            {
                string fileContent = "";
                // 使用 System.Text.Encoding.Extensions 来获取文件编码
                Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); // 注册编码提供程序
                //var encoding = Encoding.GetEncoding(input); // 获取文件的编码
                var encoding = Encoding.Default; // 获取文件的编码

                using (StreamReader reader = new StreamReader(input, encoding))
                {
                    fileContent = reader.ReadToEnd();
                }
                // 将结果转换为 UTF-8 格式并返回
               
                output = Encoding.UTF8.GetString(Encoding.Convert(encoding, Encoding.UTF8, Encoding.Default.GetBytes(fileContent)));
            }
            else
            {
                output = "文件不存在"; // 如果文件不存在,则返回错误信息
            }

            await Context.Response.WriteAsync(output); // 将结果返回给客户端
        }
    }
}

读取ANSI编码文件中文乱码?不知道是不是环境问题,期待大神来修正,尽量还是在别的语言输出到文本的时候 指定编码utf8格式 避免中文错误。

以下是成品dll,直接可用



请求方式如下,注意修改路径,这里的ou等于发布的时候应用名,


期待大神封装成插件



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 1金币 +66 收起 理由
Lay.Li + 66

查看全部评分

回复 使用道具 举报
VVANVI悬赏达人认证
论坛元老   /  发表于:2023-4-22 16:57:38
2#
回复 使用道具 举报
诗仙·1957
金牌服务用户   /  发表于:2023-4-23 09:05:29
3#
VVANVI 发表于 2023-4-22 16:57
https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=77682&page=2#pid302849

是要读取服务器文件夹里面的txt文件,而不是语音
回复 使用道具 举报
Lay.Li悬赏达人认证 活字格认证
超级版主   /  发表于:2023-4-23 09:22:04
4#
感谢各位大佬的支持~
目前没有这个插件,可以尝试用c#写webapi去实现这个功能哈
回复 使用道具 举报
VVANVI悬赏达人认证
论坛元老   /  发表于:2023-4-23 11:24:46
5#
本帖最后由 VVANVI 于 2023-4-23 11:45 编辑
诗仙·1957 发表于 2023-4-23 09:05
是要读取服务器文件夹里面的txt文件,而不是语音

那就要撸代码了 ,c#  ,py ,java 任君选择 ,  

还是算了吧, 你又觉得这简单的功能,  搞代码不合适
回复 使用道具 举报
Lay.Li悬赏达人认证 活字格认证
超级版主   /  发表于:2023-4-23 11:46:05
6#
感谢各位大佬的支持~
回复 使用道具 举报
Lay.Li悬赏达人认证 活字格认证
超级版主   /  发表于:2023-4-24 14:38:51
8#
大佬666
回复 使用道具 举报
诗仙·1957
金牌服务用户   /  发表于:2023-4-24 17:31:45
9#
然后就可以

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Lay.Li悬赏达人认证 活字格认证
超级版主   /  发表于:2023-4-24 17:41:50
10#
v587
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部