C语言 fastq文件转换为fasta文件
目前只能处理短序列,若要处理长序列,可按照https://www.cnblogs.com/mmtinfo/p/13036039.html的读取方法。
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <string.h>
4 #define RLEN 1024
5
6 static void getfq(char *fq, char *ofq);
7
8 int main(int argc, char *argv[]){
9
10 if(argc!=3){
11 printf("infomation:\n");
12 fprintf(stderr,"\tusage: %s <fastq> <fast>\n",argv[0]);
13 exit(-1);
14 }
15 getfq(argv[1],argv[2]);
16 exit(0);
17 }
18
19 static void getfq(char *fq, char* ofq){
20
21 FILE *fp1=fopen(fq,"r");
22 FILE *fp2=fopen(ofq,"w");
23
24 char fline[RLEN];
25 char read[4][RLEN];
26 char *r=NULL;
27
28 while(fp1 != NULL && fp2 != NULL){
29
30 for(int i=0; i<4; i++){
31 r=fgets(fline,RLEN,fp1);
32 if(r != NULL){
33 strcpy(read[i],fline);
34 }
35 else{ // EOF
36 goto LoopOut;
37 }
38 }
39
40 for(int i=0; i<4; i++){
41 switch(i)
42 {
43 case 0:
44 memcpy(read[i],">",1);
45 fprintf(fp2,"%s",read[i]);
46 break;
47 case 1:
48 fprintf(fp2,"%s",read[i]);
49 break;
50 case 2:
51 continue;
52 break;
53 case 3:
54 continue;
55 break;
56 default:
57 break;
58 }
59 }
60 }
61 LoopOut:
62 free(r);
63 r=NULL;
64 free(fp1);
65 free(fp2);
66
67 return;
68 }
C语言 fastq文件转换为fasta文件的更多相关文章
- C语言 fastq文件转换为fasta文件2
修改可读取压缩格式文件 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 #in ...
- 使用VirtualBox把IMG文件转换为VDI文件
使用VirtualBox把IMG文件转换为VDI文件 首先确保已安装VirtualBox. 需要使用的命令: 语法:$ VBoxManage convertdd input.img output.vd ...
- python之模块py_compile用法(将py文件转换为pyc文件)
# -*- coding: cp936 -*- #python 27 #xiaodeng #python之模块py_compile用法(将py文件转换为pyc文件):二进制文件,是由py文件经过编译后 ...
- APNS .p12文件转换为 .pem文件
1:先用mac的钥匙串工具,把APN的推送证书转换为 .p12文件: 2:在mac的终端下 把.p12文件转换为 .pem文件 openssl pkcs12 -in apns-dev-cert.p12 ...
- Python如何实现doc文件转换为docx文件?
Python如何实现doc文件转换为docx文件? 在开发过程中遇到一个关于读写doc和docx的问题: 一个文件夹中有两种文件, 一种为doc结尾, 一种为docx结尾, 需要将这些文件全部重命名. ...
- TensorFlow的checkpoint文件转换为pb文件
由于项目需要,需要将TensorFlow保存的模型从ckpt文件转换为pb文件. import os from tensorflow.python import pywrap_tensorflow f ...
- 实战FFmpeg--iOS平台使用FFmpeg将视频文件转换为YUV文件
做播放器的开发这里面涉及的东西太多,我只能一步步往前走,慢慢深入.播放器播放视频采用的是渲染yuv文件.首先,要知道yuv文件是怎么转换得来的,其次,要知道怎么把视频文件保存为yuv文件.雷神的文章1 ...
- GIF文件转换为头文件工具
目的: GIF文件转为头文件 举例: 用UE打开GIF文件,如下图所示:图1 test.gif文件将上面文件内容转化为头文件,放到一个数组里面,内容如下:图2 test.h文件 思路: 从上面可知,将 ...
- bat文件转换为exe文件
批处理文件转换为exe文件(简单的处理文件),点击下载 使用超简单的了,不多说.
随机推荐
- [技术博客]大闸蟹的技术博客,通过gitlab api进行用户批量创建
技术博客--通过gitlab api批量注册用户 gitlab登录界面本身提供了register功能,但需要手工一个个添加,对于一次性会添加整个班级的学生的软工平台来说并不科学合理.使用gitlab ...
- seata整合nacos完成分布式的部署
seata整合nacos完成分布式的部署 一.背景 二.部署机器 三.部署步骤 1.在seata上创建命名空间 2.下载对应版本的seata 3.单机启动 1.修改seata配置文件 1.修改注册中心 ...
- Machine learning (7-Regularization)
1.The Problem of Over-fitting 2.Cost Function 3.Regularized Linear Regression 4.Regularized Logistic ...
- C# 如何将日期格式化ISO8601模式
类似于这样的时间戳格式:预计来访时间,时间参数需满足ISO8601格式:yyyy-MM-ddTHH:mm:ss+当前时区,例如北京时间:2018-07-26T15:00:00 + 08:00 stri ...
- Gitee图床设置
https://gitee.com/ 创建新仓库 点击右上角加号->新建仓库,填写基本信息后点击下面的创建即可 https://gitee.com/projects/new 创建新令牌 点击设置 ...
- WPF_02_XAML
XAML(Extensible Application Markup Language的简写)是用于实例化.NET对象的标记语言.XAML对于WPF不是必须的. XAML基础 XAML标准: XAML ...
- clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)
修改文件 /etc/sysconfig/nfs将#MOUNTD_PORT=892开启防火墙端口:firewalld-cmd --add-port=892/tcp
- Linux&C open creat read write lseek 函数用法总结
一:五个函数的参数以及返回值. 函数 参数 返回值 open (文件名,打开方式以及读 ...
- 执行新程序 execve()
新程序的执行 一:execve() 之所以叫新程序的执行,原因是这部分内容一般发生在fork()和vfork()之后,在子进程中通过系统调用execve()可以将新程序加载到子进程的内存空间.这个操作 ...
- 端口扫描工具 nmap 使用手册
0x00 主机发现 -sL 仅仅是显示,扫描的IP数目,不会进行任何扫描 -sn ping扫描,即主机发现 -Pn 不检测主机存活 -PS/PA/PU/PY[portlist] TCP SYN Pin ...