已更新python,见新博客  http://www.hrwhisper.me/archives/708

写作背景:

南京决赛比赛完那天晚上写的。

使用方法:

将My Clippings.txt 放在e盘根目录下即可。

输出也在e盘根目录。

设计思想:

以下面的笔记为例。在每一段笔记后面都是==========分隔。

同样书名的也会分隔。

而kindle对于不同书只会直接往下继续写。要是同时看几本书就乱七八糟的。

嗯so~

读取第一行作为书名判断,第二行无用数据抛弃掉。

接下来的正文读取到==========为止。

然后按相同书名的输出即可。

当然如果你在标注的同时写了笔记。。我这个功能没做,因为Kpw2打字蛋疼死!

嗯还有就是中文处理有点问题,先不修复了。

反正能用。

行者无疆 (余秋雨)
- 您在位置 #1635-1636的标注 | 添加于 2014年8月26日星期二 下午11:33:04 看城市潜力,拥挤的市中心不是标志。市中心是一个旋涡,把衰草污浊旋到了外缘。真正的潜力忽闪在小巷的窗台下,近郊的庭园里。
==========
行者无疆 (余秋雨)
- 您在位置 #1642-1643的标注 | 添加于 2014年8月26日星期二 下午11:33:33 这就像写作,当形容词如女郎盛妆、排比句如情人并肩,那就一定尚未进入文章之道。文章的极致如老街疏桐,桐下旧座,座间闲谈,精致散漫。 城市这篇文章,也是这样。
==========

源代码:

//kindle笔记简单分类。
//by hrwhisper 2014.8.21
#include<cstdio>
#include<cstring>
#include<vector>
using namespace std;
const int MAXLINELENGTH = 10000; //max note length
const int MAXBOOK = 1000; //max book numbers
char line[MAXLINELENGTH];
const char newNoteTarget[] = "==========";
int curBookLen = 0;//current read book numbers;
int curNoteLen = 0; //current note numbers;
char bookName[MAXBOOK][MAXLINELENGTH]; //restore all bookName
char noteContent[MAXBOOK][MAXLINELENGTH << 4]; //all note content
char curBookName[MAXBOOK]; //current book name;
vector<int> nameIndex[MAXBOOK]; //the name includes indexs in the same line. int curBookNameIndex(char *name){
int id=-1;
for (int i = 0; i < curBookLen; i++)
{
if (strcmp(name, bookName[i]) == 0)
{
id = i;
return id;
}
}
if (id == -1)
{
id=curBookLen++;
strcpy(bookName[id], name);
}
return id;
}
int main()
{
freopen("E:\\My Clippings.txt","r",stdin);
freopen("E:\\result.txt", "w", stdout);
while (gets(curBookName) != NULL)
{
int id = curBookNameIndex(curBookName);
printf("%s\n", curBookName);
nameIndex[id].push_back(curNoteLen);
gets(line); //这是无用数据的,因为是日期
while (gets(line), strcmp(line, newNoteTarget) != 0)
{
strcat(noteContent[curNoteLen], line);
}
//printf("%s\n", curBookName);
curNoteLen++;
} for (int i = 0; i < curBookLen; i++)
{
puts(bookName[i]);
printf("\n");
for (int j = 0; j < nameIndex[i].size(); j++)
{
printf("%s",noteContent[ nameIndex[i][j] ]);
printf("\n\n");
}
printf("\n\n\n\n\n%s\n",newNoteTarget);
} return 0;
}

kindle paperwhite 简单笔记按名称分类的更多相关文章

  1. 动一动手指,玩转 Kindle Paperwhite 2 (2015.7.13)

    Crtl+F 可搜索关键词.不(da)定(si)期(bu)更新,注明本帖链接即可转载.我可懒得写太详细,所以直接引了贴吧/论坛链接,这里衷心感谢原作. 首发贴吧,结果没几个人回复加上某度抽风难止就转移 ...

  2. 玩转kindle paperwhite: 如何越狱,安装强大外挂软件koreader

    NOTICE 1: 在更新kpvbooklet和使用最新版本的koreader(v2013.03-211)时候,会出现pdf文档无法重排的错误.亲测. 如果你是使用的最新版本koreader且出现上述 ...

  3. Android_简单笔记一

    入门学习Android的简单笔记(已经安装好了开发环境ADT) 一.关于 AndroidManifest.xml文件 1. android:icon和android:label定义了应用程序安装后显示 ...

  4. mybatis-config.xml简单笔记

    mybatis-config.xml简单笔记 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ...

  5. applicationContext.xml简单笔记

    applicationContext.xml简单笔记 <?xml version="1.0" encoding="UTF-8"?> <bean ...

  6. kindle paperwhite折腾记

    在亚马逊官网上买了一个kindle paperwhite 一代(849元) , 打算再买个皮套, 淘宝店  http://detail.tmall.com/item.htm?spm=a230r.1.1 ...

  7. Kindle Paperwhite 2使用体验

    博客开通后一懒就扔下了几十天,着实自惭.鉴于是第一篇,先说点题外话. 一转眼读研的生活已经过去一年有余.曾经的同学已经在职场拼搏,同龄人的生活状态也自然地带给自己一份紧迫感:不敢再贪恋校园生活的安逸, ...

  8. Python学习笔记2-flask-sqlalchemy 简单笔记

    flask-sqlalchemy 简单笔记 字数 阅读 评论 喜欢 flask-sqlalchemy SQLAlchemy已经成为了python世界里面orm的标准,flask是一个轻巧的web框架, ...

  9. 卓越网的kindle paperwhite

    卓越网的kindle paperwhite, 899元的价钱,好吸引啊,我是不是也应该买一个呢,从卓越网中看见kindle paperwhite的1代开始,一直想买,等到现在的2代也出了,也继续在考虑 ...

随机推荐

  1. MessageFormat

    MessageFormat mf = new MessageFormat("{0,number,#.##}, {0,number,#.#}"); Object[] objs = { ...

  2. jquery中prop()方法和attr()方法

    接着上一篇笔记的疑惑,找了下prop()方法和attr()方法的区别. 原来query1.6中新加了一个方法prop(),一直没用过它,官方解释只有一句话:获取在匹配的元素集中的第一个元素的属性值. ...

  3. JS的解析与执行过程—全局预处理阶段之命名冲突的处理策略

    有如下代码: <body> <script> alert(f); function f() { console.log("fff"); } var f = ...

  4. HttpClient方式调用接口的java 简单案例源码+附jar包

    1 package com.itNoob.httpClient; import org.apache.commons.httpclient.HttpClient; import org.apache. ...

  5. 洛谷—— P2580 于是他错误的点名开始了

    https://www.luogu.org/problem/show?pid=2580 题目背景 XS中学化学竞赛组教练是一个酷爱炉石的人. 他会一边搓炉石一边点名以至于有一天他连续点到了某个同学两次 ...

  6. [Python] Working with file

    Python allows you to open a file, do operations on it, and automatically close it afterwards using w ...

  7. es69

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Spring--之旅

    spring的地位 如图可以看出,sping纵跨整个项目架构,它是一个容器框架.下面使用一个简单的项目来认识spring. 快速入门 step 1.新建一个普通Java工程,spring只是一种容器, ...

  9. excel的隔行插入

    https://wenda.so.com/q/1523455238213064 #公式 IF(ISODD(ROW()),OFFSET($B$1,INT((ROW(A1)-1)/2),),OFFSET( ...

  10. JS原生方法被覆盖后的恢复办法

    alert 被覆盖 今天装修博客园,调试了下JS代码发现 alert() 方法被官方覆盖了,查看源码得知 alert 的功能被替换成了 console.log. 恢复 var _frame = doc ...