文件读写等操作

C语言文件的读写操作 文本模式,二进制模式,fgetc,fputc,fgets,.fputs,.fprintf ,fscanf, fwrite,fread, fseek, ftell, rewind, 判断文件结束, feof,标准输入流,标准输出流, 阅读详情

                                              文件相关操作

1、读文件,一行一行的读

public static void readFile(File file) {
        InputStream instream = null;
        try {
            instream = new FileInputStream(file);

            if (instream != null) {
                InputStreamReader inputreader = new InputStreamReader(instream);
                BufferedReader buffreader = new BufferedReader(inputreader);

                String line;

                //分行读取
                while ((line = buffreader.readLine()) != null) {
                    Log.d("readFile: line str = ", line);
                }
            }
        } catch (java.io.FileNotFoundException e) {
            Log.d("readFile", "The File doesn't exist.");
        } catch (IOException e) {
            Log.d("readFile", e.getMessage());
        } finally {
            try {
                if (instream != null) {
                    instream.close();
                }
            } catch (IOException e) {

            }
        }
    }

2、一行一行的写

private void writeFile(File file) {
        FileOutputStream fileOutputStream = null;

        try {
            fileOutputStream = new FileOutputStream(file);
            List<String> strList = new ArrayList<>();

            strList.add("string 1");
            strList.add("string 2");
            strList.add("string 3");
            strList.add("string 4");
            strList.add("string 5");
            strList.add("string 6");

            for (String str : strList) {
                String writeLine = str + "\n";
                fileOutputStream.write(writeLine.getBytes());
            }
        } catch (java.io.FileNotFoundException e) {

        } catch (IOException e) {
            Log.d(TAG, "writeFile" + e.getMessage());
        } finally {
            try {
                if (fileOutputStream != null) {
                    fileOutputStream.close();
                }
            } catch (IOException e) {

            }
        }
    }

3、文件拷贝

public static void copyFolder(String srcDir, String destDir) {
        Log.d("wujiang", "copyFolder: srcDir = " + srcDir);
        Log.d("wujiang", "copyFolder: destDir = " + destDir);

        try {
            File destFile = new File(destDir);
            if (destFile.exists()) {
                destFile.delete();
            }

            destFile.mkdir();

            File srcFile = new File(srcDir);
            String[] files = srcFile.list();
            File temp;

            for(String file : files) {
                Log.d(TAG, "copyFolder: file = " + file);
                if (srcDir.endsWith(File.separator)) {
                    temp = new File(srcDir + file);
                } else {
                    temp = new File(srcDir + File.separator + file);
                }

                if (temp.isDirectory()) {   //如果是子文件夹
                    copyFolder(srcDir + File.separator + file, destDir + File.separator + file);
                } else if (!temp.exists()) {
                    Log.e(TAG, "copyFolder: oldFile not exist.");
                    return;
                } else if (!temp.isFile()) {
                    Log.e(TAG, "copyFolder: oldFile not file.");
                    return;
                } else if (!temp.canRead()) {
                    Log.e(TAG, "copyFolder: oldFile cannot read.");
                    return;
                } else {
                    FileInputStream fileInputStream = new FileInputStream(temp);
                    FileOutputStream fileOutputStream = new FileOutputStream(destDir + File.separator + temp.getName());
                    byte[] buffer = new byte[1024];
                    int byteRead;
                    while ((byteRead = fileInputStream.read(buffer)) != -1) {
                        fileOutputStream.write(buffer, 0, byteRead);
                    }
                    fileInputStream.close();
                    fileOutputStream.flush();
                    fileOutputStream.close();
                }
            }

        } catch (Exception e) {
            Log.e(TAG, "error msg: " + e.getMessage());
        } finally {

        }
    }

 

QT学习之文件读写操作 一、QFile 对文件进行读写操作 1、 QFile进行读写操作 2、 QFile file( path 文件路径) 3、 读 (1) file.open(打开方式) QIODevice::readOnly (2) 全部读取 file.readAll() 按行读 file.readLine() atend()判断是否读到文件尾 (3)默认支持编码格式 utf-8 (4)利用编码格式类 指定格式 QTextCodeC (5)QTextCodec * codec = QTextCodec::codec 阅读详情

相关推荐

Qt——文件的读写操作

ini 文件是Initialization File的缩写,即初始化文件。除了windows现在很多其他操作系统下面的应用软件也有.ini文件,用来配置应用软件以实现不同用户的要求。一般不用直接编辑这些.ini文件,应用程序的图形界面即可操作以实现相同的功能。它可以用来存放软件信息,注册表信息等。

QtCompany的博客 9253

Java输入输出流(文件的复制)

Java的输入输出流是用于数据输入和输出的机制。它们提供了一种灵活的方式来读取和写入各种类型的数据,如文件、网络连接、内存缓冲区等。

weixin_52104995的博客 1657

verilog中读写文件操作

简述在verilog设计验证中,我们经常需要从文件中读取验证数据,有些数据是文本文件,有些数据是二进制文件。但是verilog读写文件的操作和软件语言还是有不同的,下面就具体总结一下verilog中的读写文件的操作。读写二进制文件不管是读写二进制文件还是读写文件文件,都要把读取到的数据放入到硬件设计中某个寄存器或者存储器中,这是verilog和软件语言读写文件最大的不同。 其实verilog读写文

Buyi_Shizi的博客 1万+

java读写文件操作

public static void readFileByBytes(String fileName) {      // 一般先创建file对象      FileInputStream fileInput = null;      try {          File file = new File(fileName);          if (!file.exists()) {     ...

刚刚起步的菜鸟 448

华为2022数字芯片笔试题

单选 1、ASIC开发流程中,如下环节的先后顺序是? A. RTL-> Synthesis->P&R B. Synthesis->P&R->RTL C. Synthesis->RTL->P&R D.RTL->P&R->Synthesis 2、o10换算成十进制是多少? A. 8 B.16 C.10 D.2 3、reg [7:0] mem [1:256];initial $readmemh("me..

weixin_44072819的博客 1万+

基于STM32F427的模拟SSI协议绝对式编码器位置反馈通信

基于STM32F427的模拟SSI协议绝对式编码器位置反馈通信

xeke997的博客 6064

java利用缓冲区及流式对大文件进行高效读写

java利用缓冲区及流式对大文件进行高效读写

book_dw5189的博客 1万+

基于fMRI数据计算脑脊液(CSF)与全脑BOLD信号的时间耦合分析

BOLD和CSF信号有多相似CSF信号要延迟多少时间才能最匹配BOLD信号BOLD-CSF的互相关公式lag:时间延迟采样点数BOLD信号CSF信号延迟时间点对应的相关系数。

Rose9614的博客 2982

Java之IO流学习总结

流:可以理解为数据的流动,就是一个数据流,IO流最终要以对象来体现 流的分类:     按照流的方向:输入流和输出流  (输入流只能进行读操作,输出流只能进行写操作)     按照处理数据的不同:字节流与字符流 (若处理的数据是纯文本类型的用字符流,其他全用字节流) 字节流:处理字节数据的流对象,无论是图片、文字、视频,他都可以以二进制存储,所以字节流可以 处理设备上

TH226的专栏 454

MuJoCo 相机图片怎么拿?视角调整获取物体图片及实时显示(附代码)

在Mujoco的仿真中,对于识别抓取场景来说,如何获得添加的body等物体的实时图像很重要,今天就分享下如何添加相机视角及可视化小方块(举例)的实时图片。复制一个scene.xml为scene_withcamera.xml,在xml中添加camera和小方块如下。设置xml文件中添加的相机body id。需要创建一个离屏渲染器。

darcsdn 2128

TC397 EB配置ADC软件触发:从零实现周期采样与中断处理

本文详细介绍了如何在Infineon AURIX TC397芯片上使用EB Tresos工具配置ADC软件触发,实现周期采样与中断处理。通过硬件连接、EB模块配置、代码初始化及数据处理的全流程解析,帮助开发者快速掌握ADC软件触发技术,提升嵌入式系统开发效率。

root9的博客 231

IO流 四、字节流

编码问题 File类的使用 RandomAccessFile 字节流 字符流 对象的序列化和反序列化 4-1 字节流之文件输入流FileInputStrream-1 IO流(输入流、输出流) 字节流、字符流 1.字节流 1)InputStream、OputStream InputStream抽象了应用程序读取数据的方式 OutputStream抽象了应用程序写出输出的方式 2...

qq_40638497的博客 233

DeepSeek在实时计算与流处理系统中的突破性实践

对于技术决策者而言,现在正是将DeepSeek实时计算技术纳入企业架构蓝图的关键时机,那些能够率先构建实时智能能力的企业,将在数据驱动的商业竞争中赢得决定性优势。DeepSeek通过创新的流处理架构,成功将复杂事件处理(CEP)的延迟降低到亚秒级,同时保证了计算结果的精确性。DeepSeek研发的神经架构搜索(NAS)与知识蒸馏联合优化框架,可在保持模型精度的前提下,将参数量压缩至原始模型的1/100,实现边缘设备的实时AI推理。随着5G和物联网技术的普及,对实时处理能力的需求将呈指数级增长。

Programming Talk 291

C++文件的读写操作详解

在程序设计中,文件常用的操作不外乎——打开、读、写、流指针操作、关闭。在回答问题时,却发现很多道友没有真正掌握这些简单的操作。为此,博主就文件的一系列操作进行详细介绍,供道友们学习。 一、文件的相关概念 (一)文件及文件类型 计算机上的文件其实是数据的集合,对文件的读写其实是对数据的读写。 文件可以大致分为两种:文本文件和二进制文件。   1、文本文件:它的每一个字节存放的是一个ASCII码,代表...

袁君元的博客 3万+

杰理SDK入门教程(五):按键使用配置

摘要 杰理SDK提供IO按键和AD按键两种方案。IO按键通过GPIO电平检测实现,配置时需要设置板级宏定义和硬件连接,默认使用PB1引脚。AD按键基于ADC电压采样,通过电阻分压区分按键,需配置功能使能、硬件通道和键值适配。按键功能通过修改SDK中的key_table文件实现。两种方案适用于不同硬件场景,开发者可根据需求选择。

qq_42014563的博客 776

YOLO11 锚框机制全解析:从改进 K-means 聚类到自适应优化,附多场景实战(附代码)

摘要 YOLO11的锚框机制采用"自适应、动态化、场景感知"的设计理念,通过数据驱动的锚框生成、多尺度感知分配和实时优化策略,显著提升目标检测性能。相较于早期YOLO版本,YOLO11的锚框完全基于训练集目标分布自适应生成,并引入智能分配策略,使不同尺寸目标获得最优匹配。技术架构包含自适应锚框生成、多尺度分配器和动态优化模块,通过改进的K-means聚类和交并比计算实现精准匹配。YOLO11锚框机制在检测精度、训练稳定性和场景适应性方面均有显著提升,为复杂场景下的目标检测提供更优解决方案

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1321

文件的读写基本操作

一、文件是计算机中数据持久化存储的表现形式 读写文件标准操作格式1: 1、打开文件:file1 = open('文件名','读写模式') 2、操作文件 3、关闭文件:file1.close() 文件操作完毕后必须关闭,否则长期保持对文件的连接状态,造成内存溢出的现象发生 读写文件操作格式2: # 1、打开文件 file1 = open('demo.txt','w') # 2、操作文件 file1.write('hello world') # 3、关闭文件 file1.close() 1、打开文件:wi

范高伦的博客 1万+

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

C语言文件操作(文件读写)

文章目录前言一、文件1.什么是文件?2.文件名二、文件的打开和关闭1.文件指针2.文件的打开与关闭三、文件的顺序读写总结 前言 本文主要介绍C语言中文件操作的相关内容(例:文件读、写等相关函数)。 一、文件 在对计算机的使用中我们几乎离不开文件。例如常见的有word 文档,txt文本文件,图片文件、音频文件等。 1.什么是文件? 文件是以计算机硬盘为载体存储在计算机上的信息集合。是数据源的一种,最主要的作用是保存数据。 在程序设计中,我们可将文件分为两大类:程序文件和数据文件 (1)程序文件 包.

m0_53689542的博客 10万+

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Python 文件的读写操作

文章目录一、Python 文件读写概述二、使用 open() 打开文件三、使用 read()、readline()、readlines() 读取数据四、使用 write()、writelines() 写入文件最后 一、Python 文件读写概述 Python 在文件读写操作中,会使用「内置函数」和「Pandas 库」两种方式。 先来看内置函数,包括 open()、read()、readline()、readlines()、write()、writelines()、close() 等方法,也是接下来给大家详

江帅帅 6万+

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

C++文件读写操作

C++文件读写操作!!!

m0_73344394的博客 2373

python中文件的基本操作、文件读写

python中文件的基本操作介绍

守墓人的博客:分析日常生活中的工具和一些学习内容 1110

python读写文件——文件指针操作

读写文件 文件处理步骤:打开文件——处理数据——关闭文件 File=open('文件名称','读取方法')#打开文件 t=File.readline()#读取文件 File.close()#关闭文件 读写文件基本操作 open()#打开文件 read(size)#读取文件长度为size的字符串,如果为给定或者为负则读取全部内容 readline()#读取一行内容,返回字符串,文件读写位置下降一行 readlines()#读取所有行并返回列表 write(s)#将字符串s内容写入文件 writelines(

Arider的博客 3438

Python之文件读写操作

文件读写是每一门编程语言的最基本的核心功能,有了文件读写功能,才能方便地存储和读取数据 文件读写 现在的操作系统不允许普通的程序直接进行磁盘操作,所以文件读写请求操作系统打开一个文件对象,然后通过操作系统提供的接口对我们的文件进行读写操作。 读写文件是最常见的IO操作,python内置了读写文件的函数 在python中读写文件十分简单,我们可以使用python内置的open()函数来打开文件对象 ...

TaoismHuang的博客 4593

文件的读写操作(备份,批量操作文件)

文件的读写操作,以二进制的方式操作文件,读取大文件,文件备份,批量操作文件的重命名和创建。学生管理系统

wujianrenn的博客 2807

fstream —文件读写操作

一、fstream 文件输入输出流 1、文件读写的三种类型 ifstream:从一个给定文件中读取数据 。 ofstream:向一个给定的文件中写入数据 fstream:可以读写给定的文件。 它可以用IO库中的<<、>>、getline()等方式来读写文件。其中getline()只能用来读取字符串,不可以读取数值类型。 2、fstream 的一些操作 当一个 fstream 对象被销毁时,close函数会被自动调用。 // 创建一个未绑定的文件流 fstream ftm01; /

Jeffxu_lib的博客 2万+

C#文件读写操作 [详细]

C# 中的 I/O 类 FileStream 类 C#中文本文件的读取写入 1) StreamReader 2) StreamWriter 二进制文件读写 1) BinaryReader 类 2) BinaryWriter 类

这个人好有趣....hh 1万+
上一篇: Rxjava2.0 最经典的系列学习:通俗、易懂。
下一篇: 图片自动更新成U盘里指定的图片
wujiang_android
博客等级 码龄9年 11粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值