小编dwi*_*ith的帖子

C++ - getline是否具有最大字符串或字符容量?

我的问题是参考我正在进行的任务.似乎有多种方法来处理任务.

我正在编写的程序将是文本文件的过滤器.分配的目的是获得fstream和getline的经验.

要求:

  1. 阅读一个文本文件(任何可能的方式,不必一次全部)
  2. 写入单独的文本文件(任何可能的方式,可以逐个字符地追加或写入)
  3. 假设每个句子以句点结束.
  4. 每个句子的第一个字母必须是大写的.
  5. 除了每个句子的第一个字母之外的所有内容都必须是小写的.(专有名词也是 - 这是一个微不足道的例子)

我有一个我编写的程序的工作草案,但是getline在阅读我的文本文件方面有不一致的地方.基本上,它会以字符串形式读取一行,这就是我想要的.正如它在第二行中读到的那样; 但是,该程序在该行的中途抛出一个运行时错误,Windows将其关闭.

getline是否有一个填充缓冲区,需要在每行读取后清理?

我的程序伪代码:

  1. 使用getline从行x中读取字符串,在句点(.)处停止.
  2. 迭代字符串字符,大写第一个字母,然后小写其余字符.
  3. 在文本文件中的最后一个句点(.)之后继续读入另一个字符串.
  4. 重复直到读取文本文件.
  5. 写入第二个文本文件.

我这样实现getline:

getline(fileIN, str1, '.')
Run Code Online (Sandbox Code Playgroud)

str1是从每一行读取的字符串.

我正确使用getline吗?我是否通过正确有效地思考这个问题?

*我意识到,当我完成这个扩展的问题/部分时,getline可能在行的末尾使用更多内存用于'\ r'或'\n'字符,或者由于与内存无关的原因,getline无法正确处理(根据为了我的目的)包裹到新行的句子.getline不能很好地处理句子/自动换行吗?

另外,有没有办法动态指定getline来读取第一个字符串,直到句号(.)或换行符('\n'),这是第一个?

感谢您的时间和考虑.

c++ getline

4
推荐指数
1
解决办法
9399
查看次数

Apache 2.2重写规则用于Plone和Zope用于Intranet门户

这个问题将主要针对Zope和Plone管理员和开发人员.

我一直试图使用来自apache,Plone.org和Zope基金会的文档来获取Apache重写规则.我找到了一些小例子,但他们似乎没有足够的解释我可以用来应用我的情况.我为任何为这些组织创建文档的人道歉 - 文档非常出色.我只是没有成功解决这个问题.

概述:上下文是企业防火墙后面的Intranet门户样式设置.我使用Apache作为在zeo服务器(端口8080)上运行的plone实例(name = wiki)的代理.出于安全原因,我不希望任何人直接通过端口8080访问plone站点.我希望Apache在端口80上侦听以重定向/代理到plone站点.这也使我能够隐藏对用户来说过于复杂的URL部分.我有一个单独的DNS服务器指向Plone服务器(Plone hostname = wiki.domain.net),以便减少一些地址复杂性.用户可以输入"wiki"从我们的域内访问服务器.请记住,我的老板还要求将plone站点名称称为"wiki".因此,目前用户可以使用以下约定访问plone:

http://wiki:8080/wiki http://wiki.domain.net:8080/wiki

Apache正在运行但无法通过端口80重定向 - 实际上有人可以直接在端口8080上访问zope/plone.我希望Apache获取流量并重定向到plone实例.

这是我的httpd.conf文件的虚拟主机部分:

    <VirtualHost *:80>
       ServerAdmin admin@wiki.domain.net
       ServerName wiki.domain.net
       ErrorLog logs/wiki.domain.net-error_log
       CustomLog logs/wiki.domain.net-access_log common
       RewriteEngine On
       RewriteRule ^/(.*) http://127.0.0.1:8080/VirtualHostBase/http/%{SERVER_NAME}:80/wiki/VirtualHostRoot/$1 [L,P]
    </VirtualHost>
Run Code Online (Sandbox Code Playgroud)

从我的浏览器我收到:

   `Bad Request

   Your browser sent a request that this server could not understand.
   Apache/2.2.15 (CentOS) Server at wiki Port 80`
Run Code Online (Sandbox Code Playgroud)

Apache error_log $ tail -20 error_log::

   [Fri Jan 13 09:20:37 2012] [notice] Digest: done
   [Fri Jan 13 09:20:37 2012] [warn] mod_wsgi: Compiled for Python/2.6.2. …
Run Code Online (Sandbox Code Playgroud)

apache mod-rewrite zope plone

1
推荐指数
1
解决办法
3065
查看次数

标签 统计

apache ×1

c++ ×1

getline ×1

mod-rewrite ×1

plone ×1

zope ×1